将 IR 代码列表转换为 Lua 数组/表

我通过 IrScrutinizer 生成了一长串的 IR 代码(在文本文件 test.txt 中,示例如下),我想将它们转换为一个表格或 .csv,并以它们的相关名称作为变量名,以便我可以随后调用它们。

示例文本:

Power
0000 0070 0000 0032 0080 0040 0010 0010 0010 0030 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0030 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0030 0010 0010 0010 0010 0010 0030 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0030 0010 0010 0010 0030 0010 0010 0010 0030 0010 0030 0010 0030 0010 0030 0010 0010 0010 0010 0010 0030 0010 0010 0010 0030 0010 0030 0010 0010 0010 0030 0010 0030 0010 0030 0010 0ACD

Power$1
0000 006C 0022 0002 015B 00AD 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0016 0016 0016 0016 0041 0016 0016 0016 0016 0016 0016 0016 0041 0016 0016 0016 0041 0016 0041 0016 0016 0016 0041 0016 0041 0016 0041 0016 05F7 015B 0057 0016 0E6C

Power$2
0000 0068 0000 0022 0169 00B4 0017 0044 0017 0044 0017 0017 0017 0017 0017 0017 0017 0044 0017 0017 0017 0044 0017 0017 0017 0017 0017 0044 0017 0044 0017 0044 0017 0017 0017 0044 0017 0017 0017 0044 0017 0017 0017 0017 0017 0044 0017 0044 0017 0017 0017 0017 0017 0044 0017 0017 0017 0044 0017 0044 0017 0017 0017 0017 0017 0044 0017 0044 0017 0017 0017 0636

我是 Lua 的新手,一直在试图弄清楚如何做到这一点。我想去获取文件,打开它,然后将其转换为数组或将其存储在新文件中。然后能够在以后返回并调用我需要的特定代码。

转换函数:


function convertCodestoarray (filename)
  local lfs = require "lfs"
  local dir = "mnt/nas/vera/ircodes/"   -- 文件路径
  print(dir .. filename)
  for filename in lfs.dir(dir) do
        if filename: match "%.txt$" then
            for line in io.lines(dir .. filename) do
                local params = "([^,]+)/n([^,]+)"
                local codename, prontocode = params
                local params = table.concat ({codename, prontocode}, ", ")
                print(params)
        for filename2 in lfs.dir(dir) do
        local filename2 = io.open("powerircodes.csv", 'a')
        filename2:write(params .. "\n")
end
end

filename2:close()

end
end
end

convertCodestoarray("text1.txt")
点赞