Здравствуйте!
У меня есть текстовый файл. Мне нужно выводить информацию из него. Получается там текст который нужно выводить разделен пустой строкой. То есть первый раз мне нужно выводить несколько строк ДО пустой строки...и каждый последующий вывод также нужно вывести ДО каждой следующей пустой строки. Вопрос в следующем:
Как читать и выводить массив строк, если не я не знаю кол-ва строк. Просчитывать это же неправильно, а как по-другому не понимаю
Для того, чтоб было ясно приведу пример.
Например файл содержит следующее:
текст текст текст
текст текст текст
{пустая строка}
текст текст текст
текст текст текст
{пустая строка}
текст текст текст
текст текст текст
текст текст текст
как мне вывести сначала первые две строки. Потом вторые две, а потом три оставшихся? Это все нужно сделать в графическом режиме.
Подскажите пожалуйста.
repeat
ReadLn(f,s);
if s<>'' then WriteLn(s)
until s=''
Sensitive, я сначала не обратил внимания но подзаголовок ("граф.режим").
Но графика повлияет только на вывод строки, то есть оператор WriteLn придется заменить на OutTextXY, скажем. Все остальное не зависит от реежимов экрана.
Про массив... там же не одна строка в файле, а много. Получается массив строк или нет? (начинаю сомневаться уже). И должно быть s[i] ? И не знаю как сделать цикл
for i:=1 to ??? {не знаю до чего} do readln(f,s[i])...
Погоди, а зачем тебе массив?
repeat
repeat
ReadLn(f,s);
if s <> '' then { вывод строки }
until (s = '') or seekeof(f);
readln; { <--- здесь - делаешь что тебе нужно МЕЖДУ циклами чтения из файла }
until seekeof(f);
я думала нужен массив... тогда попробую так как вы написали. Огромное спасибо!Буду стараться!