试图索引本地变量'file'(空值)在file:write。

我在学习 Lua 脚本,从以下脚本开始创建和写入文件:

A = "Hello"
local file = io.open ('test.txt',"w")
file:write(A)
file:close()

然而,我遇到以下错误:

:3 Attempt to index local 'file' (a nil value)

这是什么问题呢?

P/s:我在 CHDK 相机上运行此 Lua。

点赞
用户3585949
用户3585949

io.open 函数会在无法打开文件时返回 nil。你可以获取到错误信息:

A = "Hello"
local file, err = io.open ('test.txt',"w")
if file==nil then
    print("Couldn't open file: "..err)
else
    file:write(A)
    file:close()
end

参见:http://www.lua.org/pil/21.2.html

2014-05-08 02:22:15