一、 PUll解析Xml

public static List<Person> xmlParser(InputStream xml) throws Exception{List<Person> persons=null;Person p=null;XmlPullParser parser=Xml.newPullParser();parser.setInput(xml, "UTF-8");int event=parser.getEventType();while(event!=XmlPullParser.END_DOCUMENT){switch (event) {case XmlPullParser.START_DOCUMENT:persons=new ArrayList<Person>();break;case XmlPullParser.START_TAG:if (parser.getName().equals("person")) {p=new Person();p.setId(Integer.parseInt(parser.getAttributeValue(0)));}if (parser.getName().equals("name")) {p.setName(parser.nextText());}if(parser.getName().equals("age")){p.setAge(Integer.parseInt(parser.nextText()));}break;case XmlPullParser.END_TAG:if (parser.getName().equals("person")) {persons.add(p);p=null;}break;}event=parser.next();}return persons;}

二、以Xml格式保存信息

public static void saveAsXml(List<Person> persons,OutputStream os)throws Exception{XmlSerializer xmlSerial= Xml.newSerializer();xmlSerial.setOutput(os, "UTF-8");xmlSerial.startDocument("UTF-8", true);xmlSerial.startTag(null, "persons");for(Person person : persons){xmlSerial.startTag(null, "person");xmlSerial.attribute(null, "id",String.valueOf(person.getId()));xmlSerial.startTag(null, "name");xmlSerial.text(person.getName());xmlSerial.endTag(null, "name");xmlSerial.startTag(null, "age");xmlSerial.text(String.valueOf(person.getAge()));xmlSerial.endTag(null, "age");        xmlSerial.endTag(null, "person");}xmlSerial.endTag(null, "persons");xmlSerial.endDocument();os.flush();os.close();}

转载于:https://www.cnblogs.com/yunim2014/p/3819307.html

Android 学习之pull解析Xml相关推荐

  1. Android之Pull解析XML

    一.Pull解析方法介绍 除了可以使用SAX和DOM解析XML文件,也可以使用Android内置的Pull解析器解析XML文件.Pull解析器的运行方式与SAX解析器相似.它也是事件触发的.Pull解 ...

  2. Android学习笔记之AndroidManifest.xml文件解析(摘自皮狼的博客)

    Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它 ...

  3. Android——网络交互,如何调用接口并且json解析json格式和pull解析xml格式

    本菜鸟因为之前一直使用的是公司前辈封装好的类(网络接口调用超级方便有木有)完全没有想过有一天我会自己写,然后今天接触的时候一脸懵逼,然后今天花了一天时间终于研究好了:哈哈哈哈哈 二话不说先上代码: p ...

  4. Android -- 创建XML文件对象及其序列化, pull解析XML文件

    1. 创建XML文件对象及其序列化 示例代码:(模拟以xml格式备份短信到SD卡) SmsInfo.java, bean对象 /*** 短信的业务bean* @author Administrator ...

  5. android 如何使用SAX解析XML

    今天,简单讲讲android如何使用SAX解析XML . 昨天,我看代码时,看到了解析xml文档的代码,是使用SAX解析XML.但是我却不会使用SAX,于是在网上查找资料,最终解决了问题.这里记录一下 ...

  6. Android学习笔记43:XML文件解析(Pull方式)

    解析XML文档的方法是很多的,除了常用的SAX和DOM方法以外,还可以使用Java自带的Pull来解析XML文档. 1.使用Pull解析器解析XML文档 Pull解析器的运行方式和SAX解析器很相似, ...

  7. Android中三种常用解析XML的方式(DOM、SAX、PULL)简介及区别

    XML在各种开发中都广泛应用,Android也不例外.作为承载数据的一个重要角色,如何读写XML成为Android开发中一项重要的技能.今天就由我向大家介绍一下在Android平台下几种常见的XML解 ...

  8. Android程序解析xml至文档中,Android开发之DOM解析xml文件的方法

    本文实例讲述了Android中DOM解析xml文件的方法.分享给大家供大家参考,具体如下: 一.在assets文件中写xml文件 李明 30 李向梅 25 二.在service中写一个DOM解析的操作 ...

  9. Pull解析Xml文件

    好久没有解析xml文件了,居然都快忘了,这两天后台居然返回的xml格式的数据,尼玛,好吧,随意在整理整理 一.什么是xml eXtensiable Markup Language 可扩展标记语言 标记 ...

最新文章

  1. Android TabHost中切換、修改需要显示的Activity
  2. C++协程库coroutine使用指南
  3. 请立即弃用 Notepad++,还有 5 款更牛逼的选择!
  4. arm linux c++编译警告:ISO C++ forbids converting a string constant to ‘char*’(需要把const char*转换成char*)
  5. 用Tesseract-OCR识别网站图形验证码
  6. 现代软件工程 教学计划 中国科学技术大学-微软亚洲研究院联合培养班
  7. Android 之数据传递小结
  8. 架构设计 | 异步处理流程,多种实现模式详解
  9. PAT 乙级 1036. 跟奥巴马一起编程(15) Java版
  10. Linux 命令(102)—— zip 命令
  11. [趣谈网络协议学习] 01 网络分层
  12. MATLAB显示图像为什么一片白
  13. 内网通免广告/积分码
  14. html导航折叠与展开,html展开收起
  15. Python爬虫实战--小猪短租爬虫
  16. 双臂机器人驱动板(LM324运放电流检测、PCF8591外置ADC)
  17. Panda 用法( 基础 )
  18. EBS之挂载表单的详细步骤
  19. sql语句case when常用查询总结
  20. kingbase(人大金仓)数据库的常用知识点与简单巡检

热门文章

  1. Linux有问必答:如何安装autossh
  2. 提高面试代码质量的三要素
  3. 简述Java内存模型的由来、概念及语义
  4. WP8开发日志(1):Toolkit的本地化
  5. Java对象的实例化
  6. 写有效率的SQL查询(V)
  7. mysql f参数_MySQL 数据类型
  8. centos6 安装 mantisbt-1.2.8 —— (3)Linux系统下yum源配置(Centos 6)
  9. 8 Django 模型层(2)
  10. Python 【第十三章】 Django 之 FORM