我在寻找一个好的和dynamic解析Java中的JSON的方法。 我见过的东西,如:在Java中反序列化/解析JSON
List<String> list = new ArrayList<String>();
JSONArray array = obj.getJSONArray("test");
for(int i = 0 ; i < array.length() ; i++){
list.add(array.getJSONObject(i).getString("testKey"));
}
但是,这并不什么我搜索。在C#我有类似的东西:
dynamic results = JsonConvert.DeserializeObject<dynamic>(json);
info.Text = results["test"]["testKey"];
这里是我的JSON的例子:
{"date":"07.05.2017 11:44",
"monday":{"1":{"subject":"test","room":"test","status":"test"}}}
因此,例如,我想提出:
results["monday"]["1"]["subject"];
我希望有人理解我问题,并可以帮助我。 在此先感谢!
对于您的文章中的第一个示例,您不喜欢什么? – ItamarG3
@ItamarGreen,因为我必须添加每一个键/对象,这真的很烦人..我只是想要一个动态的方式来获取这个JSON-Keys,就像使用C#或PHP。 – iMostLiked
Java中有许多Json解析器。每个人都有自己的能力。但是Java不是C#,你不能拥有数组的字符串索引。无论如何,你正在比较桔子和苹果 - 在你的Java例子中,你正在解析一个Json数组,而在C#示例中,你正在解析一个Json对象。 – RealSkeptic