发表于: 2017-02-15 23:06:48

2 821


今天完成的事情:SAX解析方式,和解析JSON格式数据

 

创建一个继承自DefaultHandler,重写父类的五个方法,其中startElement()方法 characters()方法 endElement()方法,是有参数的,XML解析出的数据会以参数的形式传入到这些方法里.

 

SAX解析代码:

JSON(基于JavaScript语言的轻量级的数据交换格式(JavaScript Object Notiation))格式数据: 优点是体积小,缺点是语义性较差.

使用GSON库来解析JSON数据:

例如是一段这种格式的JSON数据 {name: Famas,age : 26 }

定义一个类来加入name , age字段,并且实现Getter和Setter方法

 

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

将从服务器获取到的JSON数据传过去

//传递从服务器获取到的JSON数据进来进行解析
private void parseJSONWithGSON(String jsondata){
    Gson gson = new Gson();
    //TypeTokenGson库中包含的一种获取JSON类型的类,可以传入泛型来获取类型
    List<App> list = gson.fromJson(jsondata,new TypeToken<List<App>>(){}.getType());
    //这句是自定义的类里有相匹配的字段,可以直接把JSON数据解析成这个类的对象
    Person person = gson.fromJson(jsondata,Person.class);
    for (App app : list){
        //遍历处理内容
    }
}

 

明天计划的事情:明天学习四大组件之服务,以及多线程

学习遇到的问题:

收获:SAX解析XML数据, GSON库解析JSON数据,

 



返回列表 返回列表
评论

    分享到