本篇文章为大家展示了Android中如何进行数据解析及读取,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
成都创新互联公司从2013年成立,先为乌鲁木齐等服务建站,乌鲁木齐等地企业,进行企业商务咨询服务。为乌鲁木齐企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
数据解析及读取
网络传输中数据的组织方式: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,不会自动读取
适用于移动设备,占用内存少
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中如何进行数据解析及读取,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。
网站题目:Android中如何进行数据解析及读取
当前路径:https://www.cdcxhl.com/article40/gdjoho.html
成都网站建设公司_创新互联,为您提供外贸建站、静态网站、营销型网站建设、搜索引擎优化、App开发、网站维护
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联