谷歌的Gson消息传递数据格式封装及解析,跨平台必用知识

来源:互联网 发布:程序员思维 编辑:程序博客网 时间:2024/06/10 09:21
解析一段Gson字符一般都是将其纳入到自己的字段中,然后将解析出来的结果通过循环的方式取出来,如下:
public class Attribute {
      
    privateint id;
    privateString name;
    privateint age;
      
    publicint getId() {
        returnid;
    }
    publicvoid setId(intid) {
        this.id = id;
    }
    publicString getName() {
        returnname;
    }
    publicvoid setName(String name) {
        this.name = name;
    }
    publicint getAge() {
        returnage;
    }
    publicvoid setAge(intage) {
        this.age = age;
    }
      
}

另一个封装类GsonDataAnalysis:

?
1
2
3
4
5
6
7
8
9
10
11
12
public class GsonDataAnalysis {
      
    privateList<Attribute> list;
      
    publicList<Attribute> getList() {
        returnlist;
    }
    publicvoid setList(List<Attribute> list) {
        this.list = list;
    }
      
}

测试类Main方法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/**
 * Gson解析json数据
 * @author ForeverLover
 * @version 2015-04-19
 */
public class GsonTest {
  
        publicstatic void main(String[] args) {
            String sTotalString ="{\"list\": [" +
                    "{\"id\":\"1\",\"name\":\"Tom\",\"age\":\"12\"},"+
                    "{\"id\":\"2\",\"name\":\"Marry\",\"age\":\"18\"}"+
                "]}";
            Gson gson =new Gson();
            GsonDataAnalysis gda = gson.fromJson(
                    sTotalString, GsonDataAnalysis.class);
            for(inti = 0; i < gda.getList().size(); i ++) {
                System.out.print("ID号:"+ gda.getList().get(i).getId() + " ");
                System.out.print("姓 名:"+ gda.getList().get(i).getName() + " ");
                System.out.println("年 龄:"+ gda.getList().get(i).getAge());
            }
        }
      
}
封装则是一个逆过程!
0 0
原创粉丝点击