Arrays 使用JSON数据初始化数组-lua
我想像JSON数据一样初始化我的数组值,当我尝试不正确初始化时,这里是我的代码 我的JSON值Arrays 使用JSON数据初始化数组-lua,arrays,json,lua,Arrays,Json,Lua,我想像JSON数据一样初始化我的数组值,当我尝试不正确初始化时,这里是我的代码 我的JSON值 [{"ShiftCode":"1","ShiftName":"BREAKFAST"}, {"ShiftCode":"2","ShiftName":"LUNCH"}, {"ShiftCode":"2","ShiftName":"LUNCH"}, {"ShiftCode":"3","ShiftName":"DINNER"}, {"ShiftCode":"3","ShiftName":"DINN
[{"ShiftCode":"1","ShiftName":"BREAKFAST"},
{"ShiftCode":"2","ShiftName":"LUNCH"},
{"ShiftCode":"2","ShiftName":"LUNCH"},
{"ShiftCode":"3","ShiftName":"DINNER"},
{"ShiftCode":"3","ShiftName":"DINNER"}]
我试着如下
shiftArr={'[[[{"ShiftCode":"1","ShiftName":"BREAKFAST"},{"ShiftCode":"2","ShiftName":"LUNCH"},{"ShiftCode":"2","ShiftName":"LUNCH"},{"ShiftCode":"3","ShiftName":"DINNER"},{"ShiftCode":"3","ShiftName":"DINNER"}]]]'};
它不起作用,我应该做什么进一步的更改?我假设您想将JSON数据解析到Lua表中。如果是,请尝试以下代码:
J=[[
[{"ShiftCode":"1","ShiftName":"BREAKFAST"},
{"ShiftCode":"2","ShiftName":"LUNCH"},
{"ShiftCode":"2","ShiftName":"LUNCH"},
{"ShiftCode":"3","ShiftName":"DINNER"},
{"ShiftCode":"3","ShiftName":"DINNER"}]
]]
L={}
n=0
for t in J:gmatch("%b{}") do
n=n+1
L[n]={}
for k,v in t:gmatch('"(.-)":"(.-)"') do
L[n][k]=v
end
end
@Fazil,尝试在内部循环中添加
print(n,k,v)
。@Fazil在这里工作!请在你的评论中具体说明,“它不起作用”并没有说明问题所在。如果运行代码,您将得到一个包含5个子表的表,每个子表都有两个键,与JSON中显示的值关联。