Консультация № 138478
29.05.2008, 13:26
0.00 руб.
0 1 1
Здравствуйте ув. Эксперты. Помогите, пожалуйста. У меня есть папка Directory и в ней есть разные файлы (*.jpg, *.avi, *.doc, *.dbf, *.txt и т.д.). Как сделать так, что по нажатию кнопки ОК, все эти файли сортируются по папкам, тоесть файли *.jpg в папку jpg, файлы *.dbf в папку dbf и т.д. Заранее спасибо, с нетерпением жду ответа.

Обсуждение

Неизвестный
29.05.2008, 14:06
общий
это ответ
Здравствуйте, Зигура Ярослав Анатолиевич!

Принцип работы - бежим по директории получаем имя файла(и его расширение).
Проверяем существует ли директория с именем равным расширению(DirectoryExists) - если нет то содаем (CreateDir), перемещаем файл (MoveFile). Все!!!
пример "бега" по директории в приложении(функция создает список файлов - модернизировать не составит труда)

Приложение:
procedure ListFileDir(Path: string; FileList: TStrings); var SR: TSearchRec; begin ExistsDirectory if FindFirst(Path + ‘\*.*‘, faAnyFile, SR) = 0 then begin repeat if (SR.Attr <> faDirectory) then begin FileList.Add(SR.Name); end; until FindNext(SR) <> 0; FindClose(SR); end; end;
Форма ответа