Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с текстовым файлом [D6, WinXP]


DEMs ©   (2004-08-26 14:30:00) 

Мне надо удолить первую строчку в текстовом файле, не мог бы кто-нить предложить наиболее оптимальный способ.


clickmaker   (2004-08-26 14:44:00) [1]


> [3] DEMs ©   (26.08.04 14:36)
> А если у меня файл 10Mb?

Если хочешь строку удалить именно физически, то без перемещения данных все равно не обойтись
Как вариант: загнать весь файл в буфер, определить адрес конца строки и снова записать в файл, начиная с этого адреса


DEMs   (2004-08-26 14:42:00) [2]

Спасибо, все чётко работает.


TUser   (2004-08-26 14:39:00) [3]

TStringList работает довольно быстро. Если такие операции часто встречаются - то писать на строчке, что она 'Удалена', при чтении такие строки игнорировать, иногда дефрагментировать.


DEMs   (2004-08-26 14:36:00) [4]

А если у меня файл 10Mb?


MU   (2004-08-26 14:33:00) [5]

with  TStringList.Create do
 try
   LoadFromFile(...);
   ...
   Delete(0);
   SaveToFile(...);
 finally
   Free;
 end;


clickmaker   (2004-08-26 14:32:00) [6]

StringList.LodFromFile
StringList.Delete(0);
StringList.SaveToFile


Наверх

Титульная страница Поиск, карта сайта Написать письмо