Вывод списка файлов и каталогов на C++ средствами WinApi
Небольшая программа, с помощью которой можно получить названия всех файлов и папок в выбранной директории. При этом используются средства WinApi. Компиляция и запуск производились в среде Microsoft Visual Studio 2010. Данная программка также будет частью следующей релизной программы, которая уже может быть использована непосредственно для работы.
#include <fstream>
#include <iostream>
#include <windows.h>
#include <string.h>
using namespace std;
int main()
{
WIN32_FIND_DATAW wfd;
HANDLE const hFind = FindFirstFileW(L"C:\\Users\\*", &wfd);
setlocale(LC_ALL, "");
if (INVALID_HANDLE_VALUE != hFind)
{
do
{
std::wcout < < &wfd.cFileName[0] < < std::endl;
} while (NULL != FindNextFileW(hFind, &wfd));
FindClose(hFind);
}
system("pause");
return 0;
}
Разбирать построчно программу нет смысла: сначала объявление, затем адрес и в цикле проверяется наличие файлов и папок в выбранном каталоге. Единственное, на что стоит обратить внимание, так это на 13 строку - в ней устанавливается возможность проверки имен файлов и каталогов для всех локалей. Если этой строки не будет, то программа, дойдя до, например, русского символа, просто прекратит свою работу.
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.
Программы на заказ
Отзывы
Контакты