Lua 拒绝读取文件
Lua is refusing to read from a file
我输入了我的代码,没想到它会首先尝试工作,当然它没有。我连续调整了几个小时,但我一直得到相同的结果,直到我尽可能简单。
local file = io.open("File_Name", "r")
io.output(file)
local test = io.read('*all')
io.close(file)
print(test)
在得到(没有return)之后,我决定休息一下,让其他人回答我的问题。
您的代码存在的问题是您试图从定义为输入文件的任何内容中进行读取。您只打开了一个文件,但没有告诉 Lua 将其用作输入文件,因此 io.read 还不会从打开的文件中读取。
local file = io.open(filename, "r")
local test = file:read("a")
io.close(file)
print(test)
或者:
local file = io.open(filename, "r")
io.input(file)
local test = io.read("a")
io.close(file)
print(test)
或
local file = io.open(filename, "r")
local test = io.input(file):read("a")
io.close(file)
print(test)
当然你应该在使用文件句柄之前检查打开文件是否成功。
根据您的 Lua 版本,读取格式为 *a
或 a
。我不记得在所有版本中两者是否都可以。至少手册上是这么说的。
我输入了我的代码,没想到它会首先尝试工作,当然它没有。我连续调整了几个小时,但我一直得到相同的结果,直到我尽可能简单。
local file = io.open("File_Name", "r")
io.output(file)
local test = io.read('*all')
io.close(file)
print(test)
在得到(没有return)之后,我决定休息一下,让其他人回答我的问题。
您的代码存在的问题是您试图从定义为输入文件的任何内容中进行读取。您只打开了一个文件,但没有告诉 Lua 将其用作输入文件,因此 io.read 还不会从打开的文件中读取。
local file = io.open(filename, "r")
local test = file:read("a")
io.close(file)
print(test)
或者:
local file = io.open(filename, "r")
io.input(file)
local test = io.read("a")
io.close(file)
print(test)
或
local file = io.open(filename, "r")
local test = io.input(file):read("a")
io.close(file)
print(test)
当然你应该在使用文件句柄之前检查打开文件是否成功。
根据您的 Lua 版本,读取格式为 *a
或 a
。我不记得在所有版本中两者是否都可以。至少手册上是这么说的。