json解析小例

来源:互联网 发布:双色球算法公式 编辑:程序博客网 时间:2024/04/27 10:12
一、书写
在JSON中,有两种结构:对象和数组。

1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间运用 “,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。例如:
var object={"name":"lxy","age":22,"birthday":"19910102"};
2. 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间运用 “,”(逗号)分隔。

var jsonArrStr = [{ 'name': '张三', 'age': '20'},{ 'name': '李四', 'age': '18' }];

二、转化

JSONObject对象与json字符串的互相转换以及修改属性值JSONObject jsonObject = new JSONObject(); jsonObject.put("id", "12");jsonObject.put("name", "zhangsan");jsonObject.put("address", "runqian"); //SONObject对象转换json字符串String jsonStr = jsonObject.toString(); System.out.println(jsonStr);//{"id":"12","name":"zhangsan","address":"runqian"}// jsonStr = "{'id':'12','name':'zhangsan','address':'runqian'}";// json字符串转换SONObject对象jsonObject = JSONObject.fromObject(jsonStr);System.out.println(jsonObject.get("id"));//12jsonObject.put("id", "32");System.out.println(jsonObject.get("id"));//32//java对象之间转化Bean b1 = new Bean();b1.setId(23);b1.setName("lisi");b1.setAddress("runqain");jsonObject = JSONObject.fromObject(b1);System.out.println(jsonObject.toString());Bean b2 =new Bean();b2 = (Bean) jsonObject.toBean(jsonObject, Bean.class);System.out.println(b2.getId()+"+"+b2.getName()+"+"+b2.getAddress());

Bean 是一个类
package com.json;public class Bean {private int id;private String name;private String address;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}}