|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Удаление пустых строк в конце файлов
Уважаемые форумчане и гуру Дельфи!
Прошу вашей помощи, т.к. я только начинаю программировать на дельфи. Вопрос такой: нужен скрипт на дельфи для удаления пустых строк в конце файлов. Есть ListBox1, список файлов (10-15 шт), есть Button1. Надо, что бы после нажатия на Button1 из всех (или выбранных) файлов из ListBox1 в конце были удалены пустые строки или символы (HEX - #32, BIN-#20) строго после окончания текста, а также были сохранены произведенные изменения с файлами. Конец текста соостветственно обозначен точкой "." Как это сделать? Спасибо огромное всем за помощь! |
#2
|
||||
|
||||
Первое, что приходит в голову, загружать файлы поочерёдно в StringList, сканировать строки на требуемое условие и ненужные удалять, по завершении - сохранить.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#3
|
|||
|
|||
А как все это сделать? Плиз....
|
#4
|
||||
|
||||
Эээ.
Код:
var sl : TStringList; I : Integer; begin sl := TStringList.Create; try sl.LoadFromFile('MyFile.txt'); for I := 0 to sl.Count - 1 do begin // проверяем, что в строке end; sl.SaveToFile(MyFile_1.txt); finally sl.Free; end; end; Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#5
|
|||
|
|||
//проверяем, что в строке
Это вот как-то так: Trim( sl.Strings[i] ) = ''пустышка" А для символов в бинарном виде : #20, #32 как это делается и как построить цикл для всех файлов из ListBox1? Гранд мэрси! Последний раз редактировалось EverGreen, 23.07.2011 в 00:18. |
#6
|
||||
|
||||
Ну автору виднее, но лучше изменить цикл на while, если предполагается удаление.
Код:
for J := 0 to ListBox1.Count - 1 do begin предыдущий код end; Используй функцию Pos Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. Последний раз редактировалось angvelem, 23.07.2011 в 00:20. |
#7
|
|||
|
|||
ууух, что то не соображается. Видно уже поздно. Направления действий получил, буду пробовать! Если не получиться, буду опять задавать тупые вопросы 8-)
Спасибо Вам за советы! Всего наилучшего!!! |
#8
|
||||
|
||||
пимерно так:
Код:
var sl : TStringList; I, J : Integer; begin for J := 0 to ListBox.Count - 1 do begin if ListBox1.Selected[i] then // выбираем только отмеченные begin sl := TStringList.Create; try sl.LoadFromFile('MyFile.txt'); while True begin // проверяем, что в строке if начинается нужный текст then Break; end; sl.SaveToFile(MyFile_1.txt); finally sl.Free; end; end; end; end; Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#9
|
|||
|
|||
а как же replaceString? ( Копипастим конец файла и заменяем
Последний раз редактировалось ART, 23.07.2011 в 00:45. |
#10
|
||||
|
||||
С какой версии Дельфи включено?
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |