Перейти к содержимому

Фотография

Как считать n-ю строку из файла?


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 Implicanta

Implicanta

    Новый участник

  • Members
  • Pip
  • 36 сообщений
  • ФИО:Ирина

Отправлено 03 февраля 2009 - 14:32

Привет!
Подскажите, пожалуйста, вот есть у меня текстовый файл. В нем 5 строк:
s1
s2
s3
s4
s5

Я могу оттуда получить все строки:
[ ] int i
[ ] STRING sLine
[ ] HFILE hF = FileOpen ("c:\File.txt", FM_READ)
[-] for i =1 to 5
[ ] FileReadLine (hF, sLine)
[ ] Print (sLine)
А мне надо, например одну только четвертую выдернуть. Что-то не могу сообразить как..
Спасибо
  • 0

#2 Dmitry_NS

Dmitry_NS

    Активный участник

  • Members
  • PipPip
  • 134 сообщений
  • ФИО:Дима
  • Город:Елизово

Отправлено 03 февраля 2009 - 14:42

Привет!
Подскажите, пожалуйста, вот есть у меня текстовый файл. В нем 5 строк:
s1
s2
s3
s4
s5

Я могу оттуда получить все строки:
[ ] int i
[ ] STRING sLine
[ ] HFILE hF = FileOpen ("c:\File.txt", FM_READ)
[-] for i =1 to 5
[ ] FileReadLine (hF, sLine)
[ ] Print (sLine)
А мне надо, например одну только четвертую выдернуть. Что-то не могу сообразить как..
Спасибо

На самом деле, чтобы считать некоторую строку в файле, нужно считать все предыдущие. Файл сохраняет данные линейно. Так что, ничего зазорного нет в том, что для считывания одной строчки нужно весь файл перелопатить. В любом случае так и будет.

Кстати, а весь файл в список можно считать функцией SYS_ListRead
  • 0
Основной принцип моего существования — служение гуманистическим идеалам человечества.

#3 Implicanta

Implicanta

    Новый участник

  • Members
  • Pip
  • 36 сообщений
  • ФИО:Ирина

Отправлено 03 февраля 2009 - 15:03

На самом деле, чтобы считать некоторую строку в файле, нужно считать все предыдущие. Файл сохраняет данные линейно. Так что, ничего зазорного нет в том, что для считывания одной строчки нужно весь файл перелопатить. В любом случае так и будет.

Кстати, а весь файл в список можно считать функцией SYS_ListRead
[/quote]

Спасибо за быстрый ответ.
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных