如何在 corona sdk 中解析这个数据结构?

how to parse this data structure in corona sdk?

你好我有这个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 不起作用,如何在不知道名称的情况下访问子元素?仅通过索引?

** 注意:我确定这不是 Whosebug 中任何问题的重复,非常感谢。

我发现了一个至少在我的情况下有效的变通方法,打印字典元素是无序的...所以我采用了这种方法。

我把这个函数添加到 main

function tablelength(T)
  local count = 0
  for _ in pairs(T) do count = count + 1 end
  return count
end

然后我用了这个

   local count = 0

    local function networkListener( event )
        if (event.isError) then
            print ( "ERROR!" )
        else
            local jsonContent = json.decode(event.response)
            count = tablelength(jsonContent.bookinfo); print(count)
            local content = jsonContent
            local texts = {}
            for i=1,count do texts[i] = jsonContent.bookinfo["result"..i].text end
        end
    end

如果您有更好的解决方案,请告诉我们。