Я нашел много примеров при прохождении через дерево каталогов, но мне нужно что-то немного другое. Мне нужен класс с некоторым методом, который каждый вызов возвращает один файл из каталога и постепенно проходит через дерево каталогов. Как я могу это сделать, пожалуйста? Я использую функции FindFirstFile, FindNextFile и FindClose, я новичок в C++. У меня есть что-то вроде этого ...Как пройти по дереву каталогов шаг за шагом?
Например, у меня есть этот простой дерево каталогов
Parent(folder)\
file1.txt
file2.txt
Child(folder)\
file3.txt
file4.txt
и мне нужен класс с методом, например getNextFile(), который сначала возвращает вызова file1.txt; второй вызов возвращает file2.txt, третий вызов возвращает Child (папка), четвертый вызов возвращает file3.txt и т. д.
Редактировать на дубликат флага: мне в основном нужно пройтись по дереву без do/while, while или for ... Мне нужно какое-то итератор, который может быть сохранен для последующего использования и который может продолжаться от последнего файла, когда я прервать просмотр, но в идеале только с использованием WinAPI вызовов
WIN32_FIND_DATA fdFile;
HANDLE hFind = NULL;
if((hFind = FindFirstFile(sPath, &fdFile)) == INVALID_HANDLE_VALUE)
{
return false;
}
do
{
//do some job with fdFile
}
while(FindNextFile(hFind, &fdFile));
Пожалуйста, скажите, в чем проблема. Вы хотите перейти в подкаталоги и не знаете, как, или вы хотите создать класс, инкапсулирующий код выше? –
Я отредактировал сообщение, надеюсь, он будет более ясным. – zdeniiik
Какую версию VS вы используете? – Scis