LUA 读取文件从特定行到特定行

我尝试制作 Lua 脚本读取文件 data.txt

1626363 姓名A 姓氏B
42342344 姓名C 姓氏D
345345 姓名E 姓氏F
87978987 姓名G 姓氏
1626363 姓名A 姓氏B
42342344 姓名C 姓氏D
345345 姓名E 姓氏F
87978987 姓名G 姓氏H

*这些数据不是同一个 ID 和人员

我想做的是:

例子: 值 A = <1 字节数据到 60字节>

1626363 姓名A 姓氏B
42342344 姓名C 姓氏D
345345 N

所以第三行不完整,所以我想跳过第三行并读取第一行和第二行的数据

1626363 姓名A 姓氏B
42342344 姓名C 姓氏D

值 B 将从第三行开始直到结束

345345 姓名E 姓氏F
87978987 姓名G 姓氏
1626363 姓名A 姓氏B
42342344 姓名C 姓氏D
345345 姓名E 姓氏F
87978987 姓名G 姓氏H

每个值最大为 60 字节,

对不起,我的表述不好

点赞
用户2328287
用户2328287

我不确定你想要什么。但是针对问题“从特定行读取文件到特定行”的答案是

local function skip_n_lines(f, n)
  while f:read('*l') do
    n = n - 1
    if n == 0 then break end
  end
  return n
end

local function read_n_lines(f, n)
  local t = {}
  for i = 1, n do
    local s = f:read('*l')
    if not s then break end
    t[#t + 1] = s
  end
  return t
end

local f = io.open('test.txt', 'rb+')
if 0 == skip_n_lines(f, 12) then
  local data = read_n_lines(f, 4)
end
2017-02-13 08:45:55