JSON是目前最流行的轻量级数据交换语言(没有之一)。尽管他是javaScript的一个子集。但由于其是独立与语言的文本格式,它几乎可以被所有编程语言所支持。
以下是对java语言中解析json数据的总结。
要解析json,首先要导入解析json的工具类。
1
2
3
|
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
|
我们都知道JSON中有json对象与json数组(json数据就是json对象的数组)
json对象在大括号中
例如:{“key”,”value”}
json数组在中括号中
例如:[{“key”,”value”},{“key”,”value”}]
1解析json对象
假设数据是{“key”,”value”}
1
2
3
4
5
6
7
8
9
10
|
String jsonData = "{\"key\",\"value\"}" //用反斜杠转义特殊字符,与json无关
String value = null ;
try {
JSONObject josonObject = new JSONObject(jsonData);
value = jsonObject.getString( "key" );
//这里就将json中的数据解析出来了
}
catch (Exception e){
e.printStackTrace();
}
|
有时候json对象的数据是个json数组,利用下面这种方法可以从JSON对象中提取JSON对象
1
|
JSONArray jsonArray = jsonObject.getJSONArray( "arrayKey" );
|
2.解析JSON数组
1
2
3
4
5
6
7
|
String jsonData = "[{\"key\",\"value\"},{\"key\",\"value\"}]" ;
JSONArray jsonArray = new JSONArray(jsonData);
for ( int i= 0 ;i<jsonArray .length();i++){
//遍历所有JSON数组元素
JSONObject jsonObject = jsonArray .getJSONObject(i);
String value= foodJsonObject.getString( "value" );
}
|
以上就是解析JSON数据的方法的总结。因为JSON数据的灵活性,要灵活的使用这些方法才能很好的解析出数据来。、
总结
以上就是本文关于java解析JSON数据详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他Java相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
原文链接:http://blog.csdn.net/qq_28766327/article/details/51295900