Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将io库与LuaEdit一起使用_Lua - Fatal编程技术网

将io库与LuaEdit一起使用

将io库与LuaEdit一起使用,lua,Lua,我知道这是一个非常基本的问题,但我在互联网上搜索了好几天,仍然找不到答案。我刚刚开始学习Lua,我要写一个基于文本的冒险游戏。我正在使用LuaEdit编辑我的Lua代码,但是我不能使用io命令。在Lua命令行上,如果我键入io.read,它可以工作,但在编辑器上不工作。搜索internet后,如果有库,我找不到如何导入库。默认情况下不需要导入库。您的环境可能已经禁用了它-但无论哪种情况,看到您尝试使用io时出现的错误消息。*以及您知道您的编辑器都会有所帮助。默认情况下不需要导入库。您的环境可能已

我知道这是一个非常基本的问题,但我在互联网上搜索了好几天,仍然找不到答案。我刚刚开始学习Lua,我要写一个基于文本的冒险游戏。我正在使用LuaEdit编辑我的Lua代码,但是我不能使用io命令。在Lua命令行上,如果我键入io.read,它可以工作,但在编辑器上不工作。搜索internet后,如果有库,我找不到如何导入库。

默认情况下不需要导入库。您的环境可能已经禁用了它-但无论哪种情况,看到您尝试使用io时出现的错误消息。*以及您知道您的编辑器都会有所帮助。

默认情况下不需要导入库。您的环境可能已经禁用了它-但无论哪种情况,看到您尝试使用io时发生的错误消息。*以及您了解您的编辑器都会有所帮助。

可能是LuaEdit未使用I/O库编译。您可以使用以下方法进行检查:

if(type(io) ~= "table") then
    print("I/O not available :(");
else
    print("We have I/O!");
end
如果默认情况下它不在那里,您可以尝试通过模块系统手动加载它

local io = require("io");

但最终这取决于编译到LuaEdit中的解释器是否工作。

可能是LuaEdit没有使用I/O库编译。您可以使用以下方法进行检查:

if(type(io) ~= "table") then
    print("I/O not available :(");
else
    print("We have I/O!");
end
如果默认情况下它不在那里,您可以尝试通过模块系统手动加载它

local io = require("io");

但最终这取决于编译到LuaEdit中的解释器是否能工作。

我是LuaEdit的创建者,目前是LuaEdit的唯一开发者,我可以向您确认,目前LuaEdit中没有模拟io.read。我还在Windows 7和Vista下尝试了以下lua代码,从LuaEdit运行时,它运行起来没有任何问题:

if(type(io) ~= "table") then
    print("I/O not available :(");
else
    print("We have I/O!");
end

file = io.open("c:\\test.txt", "w")
file:write("We have IO writing to disk!")
file:close()

我希望这有帮助

我是LuaEdit的创建者,目前是LuaEdit的唯一开发者,我可以向您确认,目前LuaEdit中没有模拟io.read。我还在Windows 7和Vista下尝试了以下lua代码,从LuaEdit运行时,它运行起来没有任何问题:

if(type(io) ~= "table") then
    print("I/O not available :(");
else
    print("We have I/O!");
end

file = io.open("c:\\test.txt", "w")
file:write("We have IO writing to disk!")
file:close()
我希望这有帮助

我相信os.read是您正在寻找的功能,而不是io.read

如果你一直在用Lua编写像Tekkit a Minecraft mod这样的游戏,那么你会使用io.read,因为这是他们提供的API

但是,从命令行使用Lua时,必须使用不同的API,即操作系统包中的函数。

我相信您正在寻找的函数是os.read,而不是io.read

如果你一直在用Lua编写像Tekkit a Minecraft mod这样的游戏,那么你会使用io.read,因为这是他们提供的API


但是,从命令行使用Lua时,必须使用不同的API,即操作系统包中的函数。

iftypeio~=table then printI/O not available:;否则我们有I/O!;结束将输出我们有I/O!但是这些命令仍然不能工作。是所有io命令都是这样,还是只适用于io.read?由于io.read正在从控制台读取用户输入,因此它严重依赖于提供的终端仿真。可能是LuaEdit的终端仿真器不支持此功能。我也尝试了io.write,但它也不打印任何内容。iftypeio~=table然后printI/O不可用:;否则我们有I/O!;结束将输出我们有I/O!但是这些命令仍然不能工作。是所有io命令都是这样,还是只适用于io.read?由于io.read正在从控制台读取用户输入,因此它严重依赖于提供的终端仿真。可能是LuaEdit的终端仿真器不支持此功能。我也尝试了io.write,但它也不打印任何内容。虽然此答案的质量有点低,但它似乎与主题有关,并回答了手头的问题。出于这个原因,我对这篇文章进行了一些编辑,以使其更具可挽救性,并决定不尝试删除它。虽然这个答案的质量有点低,但它似乎与主题有关,并回答了手头的问题。出于这个原因,我对这篇文章进行了一些编辑,以使其更具抢救性,并决定不尝试删除它。