Lua 文件到数组

标签 file io lua

我想知道如何在某种函数中使用 lua 将一行放入数组中

例如。 FileToArray("C:/file.txt")?

我知道我可以使用:
var = io.open("文件")
数据 = var:read()
但它只返回第一行,没有其他行。

任何人都知道如何解决这个问题或以不同的方式?我是 lua 和文件系统方面的新手。

最佳答案

您可以通过"*a"要读取函数,它应该读取整个文件:

local file = io.open("file-name", "r");
local data = file:read("*a")

如果你想将每一行存储在一个数组中。像 Jane 的解决方案一样,您可以使用
io:lines () - 返回迭代器函数(每次调用都会给你一个新行)
 local file = io.open("file-name", "r");
 local arr = {}
 for line in file:lines() do
    table.insert (arr, line);
 end

关于Lua 文件到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12855988/

相关文章:

c# - 同时读取和写入文件

c++ - 为什么我的程序不从文件中将字符输入二维数组?

Java I/O 到 .txt 文件

java - 什么会在 Java 中引发 IOException?

java - 将 ZipOutputStream 转换为 FileInputStream

java - 为什么我得到 "Unhandled exception type IOException"

lua cjson编码nil字段

regex - 如何获取包含\n的最后一行?

你能从 lua 修改 C 结构体吗?

c - 仅使用 C 安全地执行任意 Lua 代码