Android复习之旅--XML序列化和pull解析
2016-10-31 22:44
323 查看
对于XML是什么,这里就不多说了,如果不懂可以google学习下。
xml是非常重要和常用的一种数据格式
XML序列化
步骤:
生成一个序列化器
XmlSerializer serializer = Xml.newSerializer();
要把数据输出到哪里,并设置编码格式:输出流
serializer.setOutput(FileOutputStream, “utf-8”);
通过序列化器写标签
标签和属性中的第一个参数是 命名空间,一般为 null 即可
关闭流
pull解析
特点
边导入边解析,基于事件驱动方式
解析完一个节点后,返回该节点的事件类型,通过该事件类型做相应的业务处理
当解析完一个节点后,它不会继续往下解析,需要手动指向下一个节点,继续解析
android默认采用pull解析
步骤
1. 先构建一个解析器
2. 设置要解析的内容
3. 获取节点的事件类型来解析内容
pull的事件类型
解析过程
案例
详情请看我在GitHub上的demo
xml是非常重要和常用的一种数据格式
XML序列化
步骤:
生成一个序列化器
XmlSerializer serializer = Xml.newSerializer();
要把数据输出到哪里,并设置编码格式:输出流
serializer.setOutput(FileOutputStream, “utf-8”);
通过序列化器写标签
标签和属性中的第一个参数是 命名空间,一般为 null 即可
serializer.startDocument("utf-8", true); //开始文档,true表示与其他xml文件无关联 serializer.startTag(null, "开始节点"); serializer.attribute(null, "属性名", "属性值"); //属性可写可不写 serializer.text("节点的内容"); serializer.endTag(null, "结束节点"); serializer.endDocument(); //结束文档
关闭流
pull解析
特点
边导入边解析,基于事件驱动方式
解析完一个节点后,返回该节点的事件类型,通过该事件类型做相应的业务处理
当解析完一个节点后,它不会继续往下解析,需要手动指向下一个节点,继续解析
android默认采用pull解析
步骤
1. 先构建一个解析器
XmlPullParser parser = Xml.newPullParser();
2. 设置要解析的内容
parser.setInput(is, "utf-8");
3. 获取节点的事件类型来解析内容
pull的事件类型
XmlPullParser.START_DOCUMENT:文档开始 XmlPullParser.END_DOCUMENT:文档结束 XmlPullParser.START_TAG:开始标记 XmlPullParser.END_TAG:结束标记
解析过程
int event = parser.getEventType();//获取当前节点的事件类型 while(event != XmlPullParser.END_DOCUMENT) { switch(event) { case XmlPullParser.START_DOCUMENT : //TODO 一般进行数据的初始化操作 break; case XmlPullParser.START_TAG : //TODO 解析 String tag = parser.getName();//获取当前节点的标记 parser.getAttributeValue(0);//获取当前节点的第一个属性值 String text = parser.nextText();//获得当前里的文本内容 break; case XmlPullParser.END_TAG: //TODO 将数据进行保存操作 break; } event = parser.next(); //指向下一个节点 }
案例
详情请看我在GitHub上的demo
相关文章推荐
- Android复习练习七(Android中Xml序列化及Pull解析)
- Android中使用PULL方式解析XML和XmlSerializer进行序列化
- Android中使用xml保存数据(xml文件序列化)及使用pull解析xml文件
- Android Pull方式解析XML
- android_xml解析之 使用PULL读取XML文件 .
- Android采用PULL解析XML文档与写成XML文档
- Android Apps xml创建与解析PullXml
- android xml解析之PULL解析
- android之Pull解析XML
- Android[中级教程]第五章 XML解析之PULL解析器
- Android pull解析XML数据
- bak 6.android xml解析 XmlPullParser的使用.
- Android SAX,DOM,PULL解析XML文档
- Android之PULL解析和生成XML
- android使用pull的方式解析xml
- android 中 xml 解析技术之 pull 解析
- Android XML解析学习——Pull方式
- Android 解析XML 之pull
- Hello Android - PULL方式解析XML
- android-XML解析Dom,Sax,Pull