2010-03-24 1 views
2

Мне нужно отслеживать каталог, содержащий много файлов, и процесс читает и удаляет файлы .txt из каталога; после того, как все файлы .txt будут уничтожены, необходимо уничтожить процесс потребления. Как проверить, используются ли все файлы .txt с помощью C++? Я разрабатываю свое приложение на Visual Studio на платформе Windows.Как контролировать каталог для файлов на C++?

+0

Что означает «потребляемый»? Вы не можете обнаружить процесс чтения файла. –

+1

Потребляемое означает, что оно обрабатывается и удаляется. – sand

+1

Почему процесс потребления не заканчивается, когда нет больше файлов, которые нужно использовать? – Bill

ответ

0

Поскольку для каждого удаления файла txt не требуется выполнять действие. Я придумал следующий код:

{ 
    intptr_t hFile; 
    struct _finddata_t c_file; 
    string searchSpec; 
    for (size_t i = 0; i < dataPathVec.size(); ++i) 
    { 
    searchSpec = dataPathVec.at(i) + DIRECTORY_SEPERATOR + "*" + TXT_FILE_EXT; 
    hFile = 0; 
    while((hFile != -1L) || (ret != 0)) 
    { 
     hFile = _findfirst(searchSpec.c_str(), &c_file); 
     Sleep(500); 
     if (hFile != -1L) 
     { 
      ret = _findclose(hFile); 
     } 
    } 
    } 
} 

Он может контролировать много папок и ждать, пока все текстовые файлы будут удалены из всех отслеживаемых папок.

Смежные вопросы