Перейти к содержанию

Считывание строки из файла


Guest33

Рекомендуемые сообщения

file = io.open('C:\\example.txt',"w+")

file:write"Строка 1"

file:write"Строка 2"

file:write"Строка 3"

file:write"Строка 4"

file:close()

 

Добрый день!

Как мне считать допустим вторую строку, а остальные не считывать?

Ссылка на комментарий
Поделиться на другие сайты

5 часов назад, youneuoy сказал:

считай все, а вторую строку не сохраняй нигде?

Мне наоборот нужно считать ТОЛЬКО вторую строку, а первую, третью и четвертую строку не считывать

Ссылка на комментарий
Поделиться на другие сайты

Нужно пройтись по всем строкам файла. Ведя общий их учет. Используй цикл for и используй итератор lines() из стандартной lua библиотеки.

Изменено пользователем Antonshka
Ссылка на комментарий
Поделиться на другие сайты

Сначала нужно определиться с алгоритмом. Как прочитать определенную строку среди остальных.

 

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

2. А может стоит последовательно читать строку до её конца и считать счетчиком, если дошли до счетчика, то вот она строка и дальше читать не нужно.

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

 

Вот уже три примерных алгоритма.

 

Дальше идем в Lua документацию. Ищем ключевые слова, ищем примеры работы с файлами и пытаемся реализовать алгоритм.

 

Подсказка

Спойлер

Я бы сделал это одним из вариантов, т.к. набор данных небольшой
1. Превратить строку в таблицу с индексами через регулярное выражение и обращаться по индексу строки
2. Через регулярное выражение для строки с итератором и счетчиком строки ( gmatch итератор с счетчиком строк)

 

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.