我想将数据存储到n * 6表中,表格就像
Test1 Test2 Test3 Test4 Test5 Test6
1 abc sss efg 1000 ijk
2 cde yyy ghi 2000 klm
...
... and so on
...
我先声明了表格
local myTable = {"Test1", "Test2", "Test3", "Test4", "Test5", "Test6"}
那么我应该如何制作n * 6表来存储我的常规格式数据呢?
任何信息都将受到赞赏!!
答案 0 :(得分:2)
您可以拥有一个嵌套表:
local myTable = {
{"Test1", "Test2", "Test3", "Test4", "Test5", "Test6"},
{1, "abc", "sss", "efg", 1000, "ijk"},
{2, "cde", "yyy", "ghi", 2000, "klm"},
-- and so on
}
答案 1 :(得分:2)
这是一个如何从字符串中提取数据并存储到表中的示例代码:
local str = 'Test1 Test2 Test3 Test4 Test5 Test6'
local myTable = {}
for s in str:gmatch("%S+") do
myTable[#myTable + 1] = s
end
你的问题有点复杂,因为它是一个二维数组,但总的想法是类似的,我会把它留给你。提示:使用循环获取每一行,使用另一个循环从每行中提取数据。
答案 2 :(得分:1)
这是另一种选择,第一列成为一组连续的正整数键:
local myTable = {
{Test2="abc", Test3="sss", Test4="efg", Test5=1000, Test6="ijk"},
{Test2="cde", Test3="yyy", Test4="ghi", Test5=2000, Test6="klm"},
-- and so on
}
这可能取决于您希望如何访问数据。有了这样的表,你可以去:
-- assumes that all rows are kept together (i.e., myTable is a "Lua sequence")
for i = 1, #myTable do
print(
myTable[i].Test2,
myTable[i].Test3,
myTable[i].Test4,
myTable[i].Test5,
myTable[i].Test6)
end