Lua 尝试索引本地';文件';(零值)?
我在corona simulator中做一个项目,涉及从项目目录中的csv文件(“car.csv”)中读取一些数据,我有这个代码,应该读取第一行,但当我运行它时,它会给我错误“尝试索引本地‘文件’(一个零值)”。你知道我该怎么解决这个问题吗Lua 尝试索引本地';文件';(零值)?,lua,io,coronasdk,Lua,Io,Coronasdk,我在corona simulator中做一个项目,涉及从项目目录中的csv文件(“car.csv”)中读取一些数据,我有这个代码,应该读取第一行,但当我运行它时,它会给我错误“尝试索引本地‘文件’(一个零值)”。你知道我该怎么解决这个问题吗 local function init() local path = system.pathForFile( "car.csv", system.DocumentsDirectory ); local file = io.open(path,
local function init()
local path = system.pathForFile( "car.csv", system.DocumentsDirectory );
local file = io.open(path, "r");
line = file:read();
print(line);
end
由于某种原因,它不会将其读入“文件”
编辑:如果使用完整路径而不是相对文件路径,则可以。但是我需要使用相对的一个,我不知道为什么它不工作。当使用
io.open
时,在尝试读取文件之前,您应该始终确保它确实成功,否则您将得到一个丑陋的“attemp to index nil”错误
如果你想让你的程序仍然崩溃,就这么做吧
localfile=assert(io.open(路径'r'))
如果找不到该文件,它将向您提供更有用的错误消息。或者,您也可以手动保存io的返回值。打开并检查错误:
本地文件,err,code=assert(io.open(path))
如果不是文件,那么
打印(“打开文件时出错”,路径,错误)
--做点什么来处理这个错误
终止