В папке имеется несколько файлов. Требуется определить тип каждого файла и в зависимости от этого перенести его в одну из папок: EXE. CPP. H. TXT. Вроде бы формулировка простая, но никак не могу сделать, мыслей нет, помогите, если не трудно. Заранее спасибо.
Ответ
Как мне кажется, нужно копать в сторону функции findfirst() и проверки строки из имени по шаблону с последующей сортировкой и презаписи в другой каталог.
Ну и еще, как вариант, написать скрипт на shell и запускать его из приложения.
UPD: вот немного кода в котором происходит поиск надо только немного изменить (произвести копирование)
#include
using namespace std;
int main(){
WIN32_FIND_DATA FindFileData;
HANDLE hFind = INVALID_HANDLE_VALUE;
// Find the first file in the directory.
hFind = FindFirstFile("C:\\*.bin", &FindFileData);
if (hFind == INVALID_HANDLE_VALUE) {
printf ("Invalid file handle. Error is %u.
", GetLastError());
} else {
printf ("First file name is %s.
", FindFileData.cFileName);
// List all the other files in the directory.
while (FindNextFile(hFind, &FindFileData) != 0){
printf ("Next file name is %s.
", FindFileData.cFileName);
}
FindClose(hFind);
}
return 0;
}
Комментариев нет:
Отправить комментарий