【发布时间】:2016-04-25 20:37:45
【问题描述】:
你好,我有这个 json 数据
"bookinfo": { "result1":{"page":"1","text":"aa","audio":"1.mp3"}, "result2":{"page":"1","text":"bb","audio":"2.mp3"}, "result3":{"page":"1","text":"cc.","audio":"3.mp3"} }
我使用这个代码
local function networkListener( event )
if ( event.isError ) then
print ( "ERROR!" )
else
local jsonContent = json.decode(event.response).bookinfo
print(jsonContent[1].text )
end
end
json数据不是只有3个result1,2,3 ...而是数百个,这就是困难所在。
我的问题是jsonContent[1].text 不起作用,如何在不知道其名称的情况下访问子元素?仅仅通过索引?
** 注意:我确定这不是 stackoverflow 中任何问题的重复,非常感谢。
【问题讨论】:
-
"如何在不知道其名称的情况下访问子元素?仅通过索引?" - 如果您不知道名称,您打算如何编制索引?
-
你可以使用
for k,v in pairs(jsonContent) do print(v.text) end -
为什么您的 json 数据使用“result1”、“result2”等名称,而不是使用数组?
-
这是我的一个项目的内存,但是当我在一个表中有json数据时,它是一个二维表,它的第一个索引在表[2][1]中找到跨度>