Страница 1 из 1
Как удалить строки из файла?
Добавлено: 29 май 2005, 21:48
Вася
Здравствуйте!
Подскажите, что мне в Дельфовом проекте прописать, чтобы в определенных файлах удалялось первые две верхние строки.
Пример
33333333 - нада убить
3333333 - тоже
вввввввв
вввввввв
вввввввв
и оставшееся поднять вверх.
Заранее спасибо.
Добавлено: 30 май 2005, 01:20
LAngel
Код: Выделить всё
procedure DelFromText;
var S: TStringList;
begin
S := TStringList.Create;
try
S.LoadFromFile('Filename.ext');
S.Delete(0);
S.Delete(0);
S.SaveToFile('FileName.ext');
finally
S.Free;
end;
end;
Добавлено: 30 май 2005, 20:53
Вася
Спасибо большое!
Попробую :-)
Добавлено: 30 май 2005, 21:36
Вася
Работает! Я в программировании начинающий, поэтому еще вопросик:
Допустим у меня очень много таких файлов из которых надо вырезать две первые строки. Не подскажите ли уважаемые, что прописать дальше, что бы мне каждый раз не менять имя файла в LoadFromFile('Filename.ext'); и в SaveToFile('FileName.ext')?
Так сказать автоматизировать процесс. Например. В меню выбрал нужный мне файл, нажал на кнопку, вырезалось , сохранилось. Беру другой и т.д.??
Заранее благодарен!
Добавлено: 31 май 2005, 08:03
LAngel
Кладешь на форму OpenDialog и, например, кнопку.
В обработчике нажатия кнопки пишешь:
Код: Выделить всё
Procedure Button1Click(Sender: TObject);
var S: TStringList;
begin
if OpenDialog1.Execute then
begin
S := TStringList.Create;
try
S.LoadFromFile(OpenDialog1.FileName);
S.Delete(0); S.Delete(0);
S.SaveToFile(OpenDialog1.FileName);
finally
S.Free;
end;
end;
end;
Нужно бы ещё, но идее, проверку организовать "Есть ли в файле эти строки, которые нужно удалить"
что-то вроде:
Код: Выделить всё
...
if S.Count >= 2 then begin Delete(0); Delete(0) end;
Добавлено: 31 май 2005, 08:05
YurikGL
Кидаешь на форму OpenDialog1.FileName и потом
procedure DelFromText;
var S: TStringList;
begin
S := TStringList.Create;
try
if opendialog1.execute then begin
S.LoadFromFile(OpenDialog1.FileName);
S.Delete(0);
S.Delete(0);
S.SaveToFile(OpenDialog1.FileName);
end;
finally
S.Free;
end;
end;
Добавлено: 31 май 2005, 08:10
LAngel