【发布时间】:2018-01-25 11:33:26
【问题描述】:
我已经检查了 SO 中的几乎所有帖子,但我没有得到解决方案
问题:我有如下 JSON 格式
{
"address": {
"state": "World",
"address": "infinite space, 000",
"city": "Android city",
"address2": {
"state": "World2",
"address": "infinite space2, 002",
"city": "Android city2",
"address3": {
"state": "World3",
"address": "infinite space3, 003",
"city": "Android city3"
}
}
},
"valid": {
"state": "World",
"address": "infinite space, 000",
"city": "Android city",
"valid2": {
"state": "World2",
"address": "infinite space2, 002",
"city": "Android city2",
"valid3": {
"state": "World3",
"address": "infinite space3, 003",
"city": "Android city3"
}
}
}
}
在这里,每个对象名称都是唯一的,将来我可能还会有许多嵌套的 JSON 对象。
我的要求是:我想动态解析每个嵌套的 JSON 对象。
例如:如果我传递任何对象名称。我的方法必须返回该对象的每个数据(键和值),或者从 JSON 中删除每个嵌套对象并超级维护它们
【问题讨论】:
-
看起来很简单。您发布的 json 看起来也无效......但无论如何......你知道关键是什么吗?你必须遍历 while(key.hasNext()) if (key.equals(string){do something}
-
这是一个有效的
JSON,但不是一个授权的。如果我使用hasNext()我可以解析它,但我必须循环内部对象的条件。除此之外你还有什么更好的解决方案 -
@down voters:在这个问题上说错了,我不会再重复了,但不评论为什么你们投票反对
-
你被否决了,因为我们想看看你有什么解决方案,然后我们可以帮助修复代码,而不是我们给你解决方案。你在创建json并存储它吗?它是静态的还是变化的?如果它是静态的,也许将它重新设计成一个简单的数组。 PS会更快->我没有投反对票。 :)
-
@DroiDev 谢谢你的想法。我会按照你的方式尝试,非常感谢你没有否决我的问题;-)