Android中如何进行数据解析及读取

本篇文章为大家展示了Android中如何进行数据解析及读取,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

数据解析及读取

  1. 网络传输中数据的组织方式:xml、json、http

    (1)xml:可扩展标记语言

    特点:保存少量数据,可跨平台

    解析方式:sax、dom、pull

    a. sax解析:

    特点:速度快,占用内存少。事件驱动,不会一次性把所有内容加载到内存中。

    startElement:元素节点开始

    localName:不带前缀的标签名

    qName:带前缀的标签名

    attributes:节点内的属性和值

    <student id ="1">


        <name>小明</name>

    </student>

    (2)dom解析:

    特点:一次性把所有内容加载到内存中

    使用于服务端编程

    (3)pull解析:

    特点:类似于sax,不会自动读取

    适用于移动设备,占用内存少

  2. json解析

    特点:相对xml,更加节省空间

    (1)json对象:{"key1":"value1","key2":"value2"}

    a. 以{}开始和结束

    b. key必须是字符串,value可以是基础数据类型、String、json对象、json数组

    c. 每条数据以逗号分隔

    例子:

    {"name":"小明","age":25,"married":"true"}

    (2)json的解析

    //根据传入的字符串,得到JSONObject类型对象

    JSONObject jsonObject = new JSONObject(str);

    //根据key,获取对应的数据

    String name = jsonObject.getString("name");

    int age = jsonObject.getInt("age");

    boolean b = jsonObject.getBoolean("married")


    //向jsonOnject中传入数据

    jsonObject.put("name","小红");

    jsonObject.put("age",20);

    jsonObject.put("married","false");

    (3)JSONArray json数组

    a. 以[]开始和结束

    b. 每一条数据都是一个jsonObject

    c. 每条数据以逗号分隔

    例子:

    [{"name":"小明","age":25,"sex":"male"},{"name":"小红","age":23,"sex":"female"}]

    解析一条JSONArray 格式的数据

    //根据传入的字符串得到一个JSONArray 类型的对象

    JSONArray jsonArray = new JSONArray (str);

    for(int i=0; i<jsonArray.length;i++){


        //根据下标得到JSONObject对象

        JSONObject jsonObject = jsonArray.getJSONObject(i);

        //根据key值得到对应的数据

        String name = jsonObject.getString("name");

        int age = jsonObject.getInt("age");

        String sex = jsonObject.getString("sex");

    }


    //向JSONArray 中传入数据

    JSONArray jsonArray = new JSONArray();

    JSONObject jsonObject1 = new JSONObject();

    JSONObject jsonObject2 = new JSONObject();

    jsonObject1.put("name","小黑");

    jsonObject2.put("name","小白");

    jsonArray.put(jsonObject1);

    jsonArray.put(jsonObject2);

上述内容就是Android中如何进行数据解析及读取,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注蜗牛博客行业资讯频道。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论电报频道链接