调用带有数字的id变量的JSON表?

时间:2017-04-15 06:16:29

标签: json lua

我是Lua的新手,我一直在努力研究API调用JSON表。但是,我尝试处理的一个特定JSON表具有以数字开头的标识符。例如,一个这样的表看起来像这样:

  "data": {
    "1001": {
        "plaintext": "item title",
        "description": "item description",
        "id": 1001
        }
      }

当我尝试解码json文件并打印" data.1001.id"例如,在控制台上,我一直收到错误"格式错误的数字在' .1001.id'"附近。

我已经查看了本网站上其他类似的问题,并将其放在方括号中,例如"数据。[1001] .id"或者"数据。[[1001]]。id",但是当我这样做时,我得到了错误" '名称'预计接近' [[1001]]'"。

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:2)

您可以将普通访问用作数组元素[]:

local json = require("json")
local j=[[ 
{
"data": {
    "1001": {
        "plaintext": "item title",
        "description": "item description",
        "id": 1001
        }
      }
}
]]

local d = json.decode(j)
print(d.data["1001"].description)