我在大学里被指派在没有任何准备的情况下创作一个作品,而且我不知道如何正确使用 JSON 来阅读此内容:
{ "af": [
["a", "b", "0", "1"],
["0", "1"],
[ ["a","#","0"], [a,0,b], [a, 1, a], ["b", 0,"a"], ["b", "1", "b"], ["0", "0", "0"], ["0", "1", "1"], [1,0,1], [1 ,1, 0] ]
["a"],
["1"]
]
}
我尝试在互联网上查找一些示例,但不知道如何使用它。我正在尝试使用 java 进行这项作业,并且我正在使用 Json 库 json-simple。有人可以帮助我吗?就像真的没有线索一样。我将继续寻找更多示例。
我的主要问题是,要“拥有”这个 json 的部分,我必须使用 jsonObject.get("name of stuff");但我在这个函数中必须使用的唯一名称是“af”...该死的我无法想象这一点,Af 是一个数组数组吗?它是一个列表吗?我有点被困在这里了。
最佳答案
您的 json 文本无效,因为它包含未加引号的键/值。
有两种方法可以处理这个格式错误的 json 文本:
第一
您应该首先将 json 转换为有效的 json,每个字符或字符串都应放在双引号中。即
这是无效的:[a, 1 ,b]
此有效:["a", 1, "c"]
注意:我提到的字符是除数字之外的任何字符
然后你可以递归调用jsonArray.getJsonArray(n).getJsonArray(m)
来获取嵌套数组,其中n
和m
是索引.
第二个
使用Jackson Core Library ALLOW_UNQUOTED_FIELD_NAMES
等功能允许您解析未正确引用的 json 文本。看到这个answer也是
关于java - [Json][Java] 对如何解析此文本一无所知。使用库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46720171/