| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Удаление определенных файлов из директории |
| Автор: henzo 28.2.2010, 02:31 |
| Например есть у нас в папке файлы 1.txt, 1s.txt, 56.txt, 56i.txt. После цифр идет только одна буква. Вот нужно удалить все файлы, в которых присутствуют буквы и оставить только 1.txt, 56.txt итд. Сейчас я удаляю все это через стандартный поиск виндовс через поиск-*a.txt, *b.txt но сами понимаете способ ###, но к сожалению это лучшее из того, что я придумал. Посоветуйте пожалуйста что нибудь. |
| Автор: THandle 28.2.2010, 13:00 |
| henzo, ну если файлов немного, то можно перебирать их FindFirst/Next, потом проверять содержит ли их имя букву(можно просто пробуя преобразовать а число(но тут и всякие - в имени файла не преобразуются), либо поиском в имени буквы... Но это довольно медленные проверки и на огромных папках я бы такой метод наверное не рискнул бы применить. |
| Автор: henzo 28.2.2010, 13:57 |
| да в этом то и дело что файлов много, ручками я конечно сейчас перебираю, но времени это не хило отнимает |
| Автор: Dom 28.2.2010, 14:02 |
| Или такой вариант, если формат имен файлов только такой и никак иначе, то можно проверять код пятого с конца символа, если он не попадает в диапазон чисел, то файл удалять. |
| Автор: Данкинг 28.2.2010, 14:06 |
| Ну дык, отбрасываешь расширение и делаешь цикл по длине строки, перебирая её символы. Если не цифра - то цикл тормозим и файл грохаем. |
| Автор: Snowy 1.3.2010, 13:45 | ||
где i - integer, а fname - имя файла. |