java如何解析JSON并将其值转换为数组?
public static void parseProfilesJson(String the_json){
try {
JSONObject myjson = new JSONObject(the_json);
JSONArray nameArray = myjson.names();
JSONArray valArray = myjson.toJSONArray(nameArray);
for(int i=0;i<valArray.length();i++)
{
String p = nameArray.getString(i) + "," + ValArray.getString(i);
Log.i("p",p);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
如您所见,此示例代码将打印出JSON的键,然后是JSON的值
如果json是这样的,它会打印配置文件,john:
{'profiles':'john'}
太酷了。这很好,因为我可以处理这些变量。然而,如果JSON是这样的呢:
{'profiles': [{'name':'john', 'age': 44}, {'name':'Alex','age':11}]}
在这种情况下,整个值就是数组。基本上,我只想获取该数组(在本例中是“值”)。。。并将其转换为JAVA可以使用的实际数组。我该怎么做?谢谢
# 1 楼答案
您可以选择快速json解析器来满足您的需求
快速json解析器非常直接、灵活、快速且可定制。试试这个
[快速json解析器](https://code.google.com/p/quick-json/) -快速json功能-
符合JSON规范(RFC4627)
高性能JSON解析器
支持灵活/可配置的解析方法
任何JSON继承权的键/值对的可配置验证
易于使用#脚印非常少
引发开发人员友好且易于跟踪的异常
可插拔的自定义验证支持-在遇到自定义验证程序时,可以通过配置自定义验证程序来验证密钥/值
验证和非验证解析器支持
支持使用快速JSON验证解析器的两种配置(JSON/XML)
需要JDK 1.5#不依赖外部库
支持通过对象序列化生成Json
在解析过程中支持集合类型选择
例如