кол-вл строк в текстовом файле

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
maelz
Сообщения: 47
Зарегистрирован: 10 сен 2005, 18:45

Подскажите , как определить количество строк в текстовом файле. Заранее благодарен
Аватара пользователя
Oscar
Сообщения: 963
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

maelz, посчитать колличество перносов строк (символ "новая строка") и если он не 0 и первая строка не пустая - добавить единицу
maelz
Сообщения: 47
Зарегистрирован: 10 сен 2005, 18:45

Можно конкретный пример, а то я что-то подзабыл работу с файлами (функция while почему-то зацикливается)
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Если файл не слишком велик сделай так

Код: Выделить всё

List := TStringList.Create;
try
  List.LoadFromFile('C:\FILE.TXT');
  Need_For_you_value := List.Count;
finally
  List.Free;
end;
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

навскидку :)

Код: Выделить всё

function CalcLF: integer;
var
  f: text;
  s: string;
begin
  Result := 0;
  Assign(f, 'text.txt');
  Reset(f);
  while not EOF(f) do 
  begin
    Readln(f, s);
    Inc(Result);
  end;
end;
while - это скорее цикл ;)
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

Можно обойтись без переменной S и делать просто Readln(F);
vunder
Сообщения: 74
Зарегистрирован: 10 май 2006, 12:19
Откуда: Санкт-Петербург
Контактная информация:

Второй вариант предпочтительнее, т.к. не грузит весь файл в память, как это делает TStringList
Ответить