android解析JSON数据

2019-12-10 18:41:46王旭

Gson的使用

一、我们在测试当中先加入一个Person类,方便测试:

package com.tomhu.test;

public class Person {
  private String name;
  private int age;

  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
}

二、 gson把对象转换成JSON格式

Gson gson = new Gson();
Person person = new Person();
person.setName("linux");
person.setAge(23);
String str = gson.toJson(person);
System.out.println(str);

打印结果:  {"name":"linux","age":23}

三、 gson把json格式解析成对象

String jsonData = "{'name':'刘力','age':19}";
Person person = gson.fromJson(jsonData, Person.class);
System.out.println(person.getName() + ", " + person.getAge());

打印结果: 刘力, 19

四、 gson把List对象解析成Json格式:

Gson gson = new Gson();
List<Person> persons = new ArrayList<Person>();
for (int i = 0; i < 2; i++) {
   Person p = new Person();
   p.setName("name" + i);
   p.setAge(i * 5);
   persons.add(p);
}
String str = gson.toJson(persons);
System.out.println(str);