Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
Marshal_Xaker
0 / 0 / 0
Регистрация: 26.08.2013
Сообщений: 23
1

Программно узнать какие есть в определённой папке файлы и если есть лишние удалить их

13.01.2014, 23:08. Просмотров 1413. Ответов 5
Метки нет (Все метки)

Доброго времени суток! Помогите пожалуйста нубу реализовать то что напишу ниже Если конечно это не сложно для вас.

Мне нужно программно узнать какие есть в определённой папке файлы и если есть лишние удалить их! Например:

Папка Mods в ней файлы

1.zip
2.jar
3.zip

Мы запускаем программу и всё проходит гладко, но если в папке появится jar или zip архив которого изначально нету его нужно удалить!
Проверку наличия файла или папки я могу сделать, а вот парсить какие файлы в папке и ненужные удалять...

Добавлено через 6 минут
А и ещё. Возможно как-то сравнивать с директориями и файлами на FTP сервере например? Что бы всё было одинаково как на FTP сервере и не одного лишнего файла!

Добавлено через 2 минуты
А что если получить список файлов с той же папки Mods и записать в Memo, потом получить списки файлов в папке Mods из FTP сервера и так же записать в memo! А потом сверить эти два мемо, если они равны пускаем в программу например Если нет, удаляем папку и перекачиваем файлы!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.01.2014, 23:08
Ответы с готовыми решениями:

Как узнать какие есть функции в библиотеке
Например, если я хочу купить библиотеку у какого нибудь продавца, он говорит...

Создать подпапку в папке, если есть определенный символ
Есть переменная вида string с содержанием: Folder123456 Нужно при нажатии...

Можно ли узнать исходной код Delphi, если есть только ехе-файл?
можно узнать исходной код delphi. если есть только ехе файл? может есть какая...

Удалить из списка L второй элемент, если такой есть
Описать процедуру, которая удаляет из списка L второй элемент, если такой есть....

Описать логическую функцию Поиск(Т,К,Н), определяющую, есть ли в таблице Т запись с ключом К и, если есть, присваивающую
const n =…; type запись = record ключ: integer; тело: string;...

5
ZfoxAK
508 / 491 / 223
Регистрация: 26.11.2012
Сообщений: 1,947
14.01.2014, 08:27 2
FileExists -проверяет наличие файла в указанном месте
DeleteFile-удаляет файл
Delphi
1
2
var AppFolderPath:string;
AppFolderPath:=copy(ExtractFilePath(Application.ExeName),1,length(ExtractFilePath(Application.ExeName))-1);
путь к папке где находится исполняемый файл
1
MaximFegorsk
32 / 53 / 9
Регистрация: 05.12.2013
Сообщений: 254
14.01.2014, 09:24 3
Вот статья как искать файлы по маске. В твоем случае по расширению.
0
Marshal_Xaker
0 / 0 / 0
Регистрация: 26.08.2013
Сообщений: 23
14.01.2014, 15:22  [ТС] 4
Цитата Сообщение от ZfoxAK Посмотреть сообщение
FileExists -проверяет наличие файла в указанном месте
DeleteFile-удаляет файл
Delphi
1
2
var AppFolderPath:string;
AppFolderPath:=copy(ExtractFilePath(Application.ExeName),1,length(ExtractFilePath(Application.ExeName))-1);
путь к папке где находится исполняемый файл
Допустим, но я же не знаю имя файла который туда положат! Допустим Name.jar я не знаю его имени, но так как он лишний мне нужно его удалить!
0
BarsikCat
16 / 15 / 9
Регистрация: 20.09.2013
Сообщений: 65
14.01.2014, 16:28 5
Цитата Сообщение от Marshal_Xaker Посмотреть сообщение
Допустим, но я же не знаю имя файла который туда положат! Допустим Name.jar я не знаю его имени, но так как он лишний мне нужно его удалить!
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
  FilePath :string;  
  SearchRec  :TSearchRec;
  MASKA  :string;  
  
begin 
  MASKA := '*.zip'; //задайте здесь нужную маску для поиска.
  FilePath := ..... // задаем путь к папке, в которой надо производить поиск файлов.
  ChDir(FilePath); 
    If FindFirst(MASKA , faArchive , SearchRec)=0 then
    REPEAT  
      If (SearchRec.Attr and faAnyFile) = SearchRec.Attr then begin
        // найден файл по заданной маске: 
        // полное имя файла будет: FilePath + SearchRec.Name;        
        // можно сравнивать его имя, заносить в какой-нибудь список, и т.п.
      end;
    UNTIL (FindNext(SearchRec) <> 0);
end;
0
ZfoxAK
508 / 491 / 223
Регистрация: 26.11.2012
Сообщений: 1,947
15.01.2014, 05:42 6
Цитата Сообщение от Marshal_Xaker Посмотреть сообщение
Допустим Name.jar я не знаю его имени, но так как он лишний мне нужно его удалить!
Если не знаешь что он лишний как собираешься удалять...?? Для это задаются критерии по которым производится удаление. Если есть списоки - сравниваешь. Есть такая компонента FileListBox выдает список файлов в папке.
0
15.01.2014, 05:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.01.2014, 05:42

Если есть форма и есть событие, а процедуры, его обрабатывающей нет в исходниках, то как это событие обрабатывается?
Друзья! Изучаю синтаксис дельфи. Ну то есть к примеру такой код: procedure...

Напишите программу для проверки, есть ли в слове X буквы "в". Если есть, то найдите номер первой из них
Напишите программу для проверки, есть ли в слове X буквы &quot;в&quot;. Если есть, то...

Дано слово. Удалить из него последнюю из букв "т", если такая буква есть
Помогите написать программный код пожалуйста &quot;Дано слово. Удалить из него...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru