Lua文件编写问题

我创建了一个字符串,打印它来查看它的样子,然后将它写入文件。然而,输出文件是空的,它打印了 nil。更多信息在注释中,我不太确定问题的原因是什么。

点赞
用户869951
用户869951

原因是在 main 函数中没有引发错误,只是返回一个错误字符串,所以 pcall 认为一切正常,你总是会进入 if 块的第二个分支。改成这样:

function main()
    ...
    if not file then
        error(err)
    end
    ...
end

local s,err = pcall(main)
if not s then
    print('error caught:', err)
else
    print("Application ran successfully.")
end

注意,被打印出来的 err 会有额外的信息,它不等于传递给 error 函数的 err

2014-09-04 16:36:53