Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
#1

Вывод списка файлов из директории - C++

31.05.2013, 20:13. Просмотров 660. Ответов 5
Метки нет (Все метки)

Доброе время суток. Возникла проблема, мне необходимо осуществить вывод списка файлов из определенной директории(задается пользователем), но как это осуществить я не знаю. Сразу уточню, я пишу программу под дос, поэтому пользоваться могу только стандартными средствами языка. Была идея осуществить все через прерывания используя DOS Fn 11H и DOS Fn 12H, но принцип я пока не совсем понимаю(т.к. при работе с прерываниями я делал только мышь и вывод даты), может есть способ полегче? Заранее спасибо.

Добавлено через 7 часов 30 минут
Кто-нибудь, отзовитесь!

Добавлено через 2 часа 54 минуты
Anybody?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.05.2013, 20:13     Вывод списка файлов из директории
Посмотрите здесь:

Вывод списка файлов и папок директории C++
C++ Список файлов в директории
Поиск файлов в директории C++
Кроссплатформенный вывод списка файлов C++
C++ Аналог ls (вывод списка папок и файлов в заданной директории)
Непонятные элементы в выводе списка файлов директории C++
C++ Вывод списка файлов из выбранной директории
C++ Функция поиска файлов, и вывод списка найденных (использую FindFirstFile, FindNextFile)
C++ Поиск файлов в директории
C++ Поиск файлов в директории
Вывод списка исполняемых файлов (включая информацию о файлах) в заданном каталоге C++
C++ Чтение списка файлов из директории, их открытие и обработка

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
metaluga145
243 / 244 / 20
Регистрация: 08.04.2013
Сообщений: 927
31.05.2013, 20:18     Вывод списка файлов из директории #2
Sid1057, я знаю метод только через WinApi,но Вам это врядли подойдет
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
31.05.2013, 20:19  [ТС]     Вывод списка файлов из директории #3
metaluga145, жаль, в таком случае придется экспериментировать с прерываниями
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
31.05.2013, 20:20     Вывод списка файлов из директории #4
Цитата Сообщение от Sid1057 Посмотреть сообщение
поэтому пользоваться могу только стандартными средствами языка
В стандарте (не знаю как в С++11) нет методов работы с директориями.
NeonLost
Пес войны
 Аватар для NeonLost
74 / 85 / 3
Регистрация: 23.02.2012
Сообщений: 653
31.05.2013, 22:19     Вывод списка файлов из директории #5
в бусте есть класс filesystem
DiffEreD
 Аватар для DiffEreD
1425 / 762 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
31.05.2013, 22:45     Вывод списка файлов из директории #6
Например:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
#include <vector>
#include <boost/filesystem.hpp>
#include <windows.h>
 
namespace fs = boost::filesystem;
 
void all_files(const fs::path& p, std::vector<fs::path>& files)
{
    for (fs::directory_iterator pos(p); pos != fs::directory_iterator(); ++pos)
    {
        if (fs::is_directory(*pos)) all_files(*pos, files);
        else
            files.push_back(*pos);
    }
}
 
int main()
{
    SetConsoleCP (1251); SetConsoleOutputCP (1251);
 
    fs::path directory_path("D://Temp");
    std::vector<fs::path> files;
    all_files(directory_path, files);
    std::cout<<"Все файлы в директории "<<directory_path<<" (включая поддиректории):\n\n";
    for (const auto& file : files) std::cout << file.filename() << std::endl;
            
    return 0;
}
Добавлено через 1 минуту
Чистым С++ врят ли можно.
Yandex
Объявления
31.05.2013, 22:45     Вывод списка файлов из директории
Ответ Создать тему
Опции темы

Текущее время: 09:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru