首先准备一个JSON格式的字符串 * String JsonStr = "{object:{persons:" + "[{name:'呵呵',image:'http://10.0.159.132:8080/Web/s1.png'}," + "{name:'哈哈',image:'http://10.0.159.132:8080/Web/s1.png'}," + "{name:'嘿嘿',image:'http://10.0.159.132:8080/Web/s2.jpg'}]}}";
* 然后定义一个Person类 * *
class Person {
private String name, image;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
}
下面是一个Json解析的程序代码
class Text {
//json字符串
static String JsonStr = "{object:{persons:" +
"[{name:'呵呵',image:'http://10.0.159.132:8080/Web/s1.png'}," +
"{name:'哈哈',image:'http://10.0.159.132:8080/Web/s1.png'}," +
"{name:'嘿嘿',image:'http://10.0.159.132:8080/Web/s2.jpg'}]}}";
public static void main(String[] args) throws JSONException {
List list = jsonStrToList(JsonStr);
System.out.println(list.size());
}
public static List jsonStrToList(String jsonStr) throws JSONException {
List list = new ArrayList();
//通过字符串,获得最外部的json对象
JSONObject jsonObj = new JSONObject(jsonStr);
//通过属性名,获得内部的对象
JSONObject jsonPersons = jsonObj.getJSONObject("object");
//获得json对象组
JSONArray arr = jsonPersons.getJSONArray("persons");
for (int i = 0; i < arr.length(); i++) {
//循环对象,并通过getString("属性名");来获得值
JSONObject tempJson = arr.getJSONObject(i);
Person person = new Person();
person.setName(tempJson.getString("name"));
person.setImage(tempJson.getString("image"));
list.add(person);
}
return list;
}
}

被折叠的 条评论
为什么被折叠?



