Java XML JSON 数据解析

[java] view plaincopyprint?
01.import net.sf.json.JSONObject; 
02.public class JsonUtil { 
03.     
04.    public static void parseJson(String jsonStr){ 
05.        //创建JSONObject 对象  
06.        JSONObject  jsonobj = JSONObject.fromObject(jsonStr); 
07.        //获得字符串属性  
08.        String name = jsonobj.optString("name"); 
09.        String sex = jsonobj.optString("sex"); 
10.        String phone = jsonobj.optString("phone"); 
11.         
12.        //获得整数属性  
13.        int age = jsonobj.getInt("age"); 
14.         
15.        //打印属性  
16.        System.out.println("name:"+ name ); 
17.        System.out.println("sex:"+ sex ); 
18.        System.out.println("phone:"+ phone ); 
19.        System.out.println("age:"+ age ); 
20.    } 
21.    public static void main(String[] args) { 
22.        //JSON 格式字符串  
23.        String jsons = "{'name':'Java',"+ 
24.                              "'sex':'men'," + 
25.                              "'phone':'12345678'," + 
26.                              "'age':'12'}"  ;       
27.        parseJson(jsons);  
28.    } 
29.} 
import net.sf.json.JSONObject;
public class JsonUtil {

public static void parseJson(String jsonStr){
//创建JSONObject 对象
JSONObject  jsonobj = JSONObject.fromObject(jsonStr);
//获得字符串属性
String name = jsonobj.optString("name");
String sex = jsonobj.optString("sex");
String phone = jsonobj.optString("phone");

//获得整数属性
int age = jsonobj.getInt("age");

//打印属性
System.out.println("name:"+ name );
System.out.println("sex:"+ sex );
System.out.println("phone:"+ phone );
System.out.println("age:"+ age );
}
public static void main(String[] args) {
//JSON 格式字符串
String jsons = "{'name':'Java',"+
  "'sex':'men'," +
  "'phone':'12345678'," +
  "'age':'12'}"  ;
parseJson(jsons);
}
}以上代码 演示了怎样解析JSON格式的数据. 如果一个JSON 对象中的某个属性是数组类型的,则需要用到JSONArray 类, 该类表示JSON 对象的数组. 获得数组类型的方法是getJSONArray() . 这个方法的返回值类型 是JSONArray . JSONArray 通过 potJSONObject 方法来获得数组中的每个JSON对象 .

下面通过一段代码 学习解析带有数组属性的JSON 格式数据.


[java] view plaincopyprint?
01.import net.sf.json.JSONArray; 
02.import net.sf.json.JSONObject; 
03. 
04.public class JsonUtilWithArray { 
05.    public static void parseJson(String jsonStr) { 
06.        // 创建JSONObject 对象  
07.        JSONObject jsonobj = JSONObject.fromObject(jsonStr); 
08.        // 获得字符串属性  
09.        String corp = jsonobj.getString("corp"); 
10.        System.out.println("corp:" + corp); 
11.        // 获得数组类型属性  
12.        JSONArray objs = jsonobj.getJSONArray("programmers"); 
13.        // 循环获得数组中的每个元素  
14.        for (int i = 0; i < objs.size(); i++) { 
15.            JSONObject jo = objs.optJSONObject(i); 
16.            String firstName = jo.optString("firstName"); 
17.            String lastName = jo.optString("lastName"); 
18.            int age = jo.optInt("age"); 
19.            // 打印属性  
20.            System.out.println("firstName:" + firstName + "\tlastName:" 
21.                    + lastName + "\tage:" + age); 
22.        } 
23.    } 
24.    public static void main(String[] args) { 
25.        String jsonStr = "{" + "'corp':'MicroSoft'," + "'programmers':" + "[" 
26.                + "{'firstName':'Bell','lastName':'McLxin','age':33}," 
27.                + "{'firstName':'Bell2','lastName':'McLxin2','age':23}," 
28.                + "{'firstName':'Bell3','lastName':'McLxin3','age':13}" + "]" 
29.                + "}"; 
30.        parseJson(jsonStr); 
31.    } 
32.} 

你可能感兴趣的:(java)