android中pull解析,读取xml中的实体类(通过xml发送实体类)
来源:互联网 发布:淘宝上的evisu旗舰店 编辑:程序博客网 时间:2024/06/09 19:55
以下是android代码
private List<TestEntity> showXml() {List<TestEntity> testEntity = null;TestEntity mTestEntity = null;// ========创建XmlPullParser,有两种方式=======// 方式一:使用工厂类XmlPullParserFactorytry {XmlPullParserFactory pullFactory = XmlPullParserFactory.newInstance();XmlPullParser parser = pullFactory.newPullParser();// 方式二:使用Android提供的实用工具类android.util.Xml// XmlPullParser parser = Xml.newPullParser();InputStream inStream = getAssets().open("test.txt");// 解析文件输入流parser.setInput(inStream, "GBK");// 产生第一个事件int eventType = parser.getEventType();// 只要不是文档结束事件,就一直循环while (eventType != XmlPullParser.END_DOCUMENT) {switch (eventType) {// 触发开始文档事件case XmlPullParser.START_DOCUMENT:testEntity = new ArrayList<TestEntity>();break;// 触发开始元素事件case XmlPullParser.START_TAG:// 获取解析器当前指向的元素的名称String name = parser.getName();if ("a".equals(name)) {// 通过解析器获取id的元素值mTestEntity = new TestEntity();}if (mTestEntity != null) {if ("content".equals(name)) {// 获取解析器当前指向元素的下一个文本节点的值mTestEntity.setContent(parser.nextText());}if ("id".equals(name)) {// 获取解析器当前指向元素的下一个文本节点的值mTestEntity.setId(parser.nextText());}if ("yesId".equals(name)) {// 获取解析器当前指向元素的下一个文本节点的值mTestEntity.setYesId(parser.nextText());}if ("type".equals(name)) {// 获取解析器当前指向元素的下一个文本节点的值mTestEntity.setType(parser.nextText());}if ("part".equals(name)) {// 获取解析器当前指向元素的下一个文本节点的值mTestEntity.setPart(parser.nextText());}if ("noId".equals(name)) {// 获取解析器当前指向元素的下一个文本节点的值mTestEntity.setNoId(parser.nextText());}}break;// 触发结束元素事件case XmlPullParser.END_TAG://if ("a".equals(parser.getName())) {testEntity.add(mTestEntity);mTestEntity = null;}break;default:break;}eventType = parser.next();}return testEntity;} catch (XmlPullParserException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return null;}
以下是xml
<iq> <a> <content>有女朋友吗?</content> <id>1</id> <yesId>2</yesId> <type>1</type> <part>头</part> <noId>3</noId> </a> <a> <content>结婚了吗?</content> <id>2</id> <yesId>4</yesId> <type>2</type> <part>头</part> <noId>5</noId> </a> <a> <content>相亲了吗?</content> <id>3</id> <yesId>ks1000</yesId> <type>3</type> <part>头</part> <noId>ks2000</noId> </a> <a> <content>有孩子了吗?</content> <id>4</id> <yesId>ks3000</yesId> <type>3</type> <part>头</part> <noId>ks4000</noId> </a> <a> <content>怎么不结婚啊?</content> <id>5</id> <yesId>ks5000</yesId> <type>3</type> <part>头</part> <noId>ks6000</noId> </a> <a> <content>炼俯卧撑没?</content> <id>6</id> <yesId>ks7000</yesId> <type>1</type> <part>胸</part> <noId>1</noId> </a></iq>
0 0
- android中pull解析,读取xml中的实体类(通过xml发送实体类)
- xml解析中的实体引用
- android中xml中的sax pull解析
- xstream解析xml到实体类
- XML帮助类 xml 转实体 或 实体 转xml
- xml中的实体参考
- SAX进行实体解析XML(android)
- SAX进行实体解析XML(android)
- Android中运用Pull解析器读取XML文件
- Android中使用Pull解析器读取XML文件
- xml 序列化 实体类
- hibernate 实体类xml配置
- DOM4j解析xml文件(SaxReader方法),并抽象实体类
- java利用反射解析xml到实体类
- 数据格式转换,数据解析,实体类、json、map、xml
- xml格式报文的拼装,和解析成实体类
- xml中的pull解析
- java中使用sax解析xml,以实体类集合的方式接受xml解析的值
- 0420(mysql学习资料)
- Android的按钮单击事件及监听器的实现方式
- NOJ 爱过
- github
- [分享]Java中Byte与基础类型之间的转换
- android中pull解析,读取xml中的实体类(通过xml发送实体类)
- 第6周项目2-VS窗口程序设计
- vmware
- C++11新标准的新理解
- Java的Object.hashCode()的返回值到底是不是对象内存地址?
- MODBUS协议
- fedora wifi频繁断开
- javascript取网页DOM自定义属性值和设置自定义属性值的通用方法
- nested exception is java.lang.IllegalStateException: Cannot convert value of type [org.springframewo