重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇文章为大家展示了Android中如何进行数据解析及读取,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
成都创新互联公司从2013年成立,先为乌鲁木齐等服务建站,乌鲁木齐等地企业,进行企业商务咨询服务。为乌鲁木齐企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
数据解析及读取
网络传输中数据的组织方式:xml、json、http
(1)xml:可扩展标记语言
特点:保存少量数据,可跨平台
解析方式:sax、dom、pull
a. sax解析:
特点:速度快,占用内存少。事件驱动,不会一次性把所有内容加载到内存中。
startElement:元素节点开始
localName:不带前缀的标签名
qName:带前缀的标签名
attributes:节点内的属性和值
(2)dom解析:
特点:一次性把所有内容加载到内存中
使用于服务端编程
(3)pull解析:
特点:类似于sax,不会自动读取
适用于移动设备,占用内存少
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 //根据下标得到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中如何进行数据解析及读取,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。