2017-02-08 4 views
1

Привет пользователей переполнения стека, у меня есть некоторый код здесь:код перестает работать после первого запуска

local input = nil 
print("What file do you want to access?") 
input = io.read(); 
local file = io.open(input, "r") 

function infiniteLoop() 
    print("What do you want to know more about?") 
    input = io.read(); 
    while true do 
    line = file:read() 
    if line == nil then break end 
     if string.find(line, input) then 
     print(line) 
    end 
    end 
end 

repeat 
    infiniteLoop() 
until false 

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

Example here

ответ

1

Вам нужен сброс указатель файла. попробуйте добавить file:seek(0) в начале функции

+0

Спасибо, теперь он отлично работает. –