Форум: "Основная";
Текущий архив: 2003.07.10;
Скачать: [xml.tar.bz2];
Внизкак прочитать последнюю строку Найти похожие ветки
← →
Man (2003-06-26 20:31) [0]Привет,всем!Народ,такой вопрос:есть текстовый файл,нужно прочитать последнюю строку.Банальное
While Not EOf(F) Do Readln(s);
не прикалывает: файл м.б. достаточно большим и теряется скорость.
Не подскажите более элегантное решение?
Зараннее всем большое спасибо!
← →
UserName (2003-06-26 20:43) [1]например так:
(строку суём в S)
var
f:TStrings;
s:String;
begin
f:= TStringList.Create();
f.LoadFromFile(‘c:\file.txt’);
s:=f.Strings[f.Count];
f.Free;
end;
← →
MBo (2003-06-26 20:44) [2]читать с конца (в буфер достаточного размера). Искать конец пред.строки ($D$A)
← →
UserName (2003-06-26 20:46) [3]кажется ошибся немного:
s:=f.Strings[f.Count]; скорее всего так s:=f.Strings[f.Count-1];
я просто не помню точно считает ли он 0 сроку за индекс.
скорее всего да, но проверь и первоначальный вариант.
← →
jack128 (2003-06-26 20:48) [4]
> UserName © (26.06.03 20:46)
По любому читается весь файл целиком, а это не желательно (см Man © (26.06.03 20:31))
← →
Anatoly Podgoretsky (2003-06-26 21:07) [5]Он не хочет даже один голый Readln использовать, а ты к этому еще хочешь добавить потери времени на выделения места под StringList, при том память будет выделяться многократно.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.07.10;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.033 c