Lua 输入问题

我对 Lua I/O 还很陌生,但在其他地方已经使用 Lua 已经将近两年了。我有以下这行代码:

for line in io.lines("myfile.txt") do

但是它总是导致一个“没有这个文件或目录”的错误。"myfile.txt" 文件和 Lua 文件在同一个目录下。

我应该把文件 "myfile.txt" 放在哪里?

原文链接 https://stackoverflow.com/questions/5923394

点赞
stackoverflow用户743356
stackoverflow用户743356

for line in io.lines(assert(io.open("myfile.txt"))) do

-- lines 函数接受一个文件作为参数,而另一方面,open 函数接受一个字符串并返回该文件。

2011-05-07 19:30:02
stackoverflow用户1205871
stackoverflow用户1205871

我曾经也遇到过同样的问题,但是用以下代码来解决了——这个代码演示了如何使用 io.open 进行迭代...

function getHostnameFromHostFile(ip)
    local hostName = "unknown";
    local hostFile = io.open("/etc/hosts");

    for line in hostFile:lines() do
        if line and string.find(line, ip) then
            hostName = line:match("[a-zA-Z][a-zA-Z0-9]+");
        end
    end
    return hostName;
end
2015-07-23 10:47:17