假设我要解析如下的XML文件:

1 <?xml version="1.0" encoding="UTF-8"?>2 <books>3     <book price="99.0" 出版日期="2008年">疯狂java讲义</book>4     <book price="199.0" 出版日期="2009年">疯狂android讲义</book>5     <book price="79.0" 出版日期="2010年">疯狂讲义</book>6 </books>

首先将该文件放到res/xml文件夹下,如果没有可以手动建立,然后解析代码如下:

 1 public void xmlparser(View v) { 2  3         XmlResourceParser xmlResourceParser = getResources().getXml(R.xml.books);// 获取xml文件的解析器 4         try { 5             StringBuilder sb = new StringBuilder(); 6             while (xmlResourceParser.getEventType() != XmlResourceParser.END_DOCUMENT) {// 如果没有到文档的结尾处 7                 if (xmlResourceParser.getEventType() == XmlResourceParser.START_TAG) {// 如果遇到标签的开始标记,就开始读取类容 8                     // 获取标签的签名 9                     String tagName = xmlResourceParser.getName();10                     if (tagName.equals("book")) {11 12                         String bookPrice = xmlResourceParser.getAttributeValue(0);// 获取标签中的第一个属性的值,这里是“price”的值13                         String bookdata = xmlResourceParser.getAttributeValue(1);// 获取标签中的第二个属性的值,这里是“出版日期”的值14                         String bookName = xmlResourceParser.nextText();// 获取文本节点的值,这里是书的名字15 16                         sb.append("价格:");17                         sb.append(bookPrice);18                         sb.append("出版日期:");19                         sb.append(bookdata);20                         sb.append("书名:");21                         sb.append(bookName);22                         sb.append("\n");23                     }24 25                 }26                 xmlResourceParser.next();// 获取解析器的下一个事件27 28             }29 30             textView.setText(sb.toString());31 32         } catch (XmlPullParserException e) {33             e.printStackTrace();34 35         } catch (IOException e) {36             e.printStackTrace();37         }38 39     }

解析后的结果如下:

更多相关文章

  1. 安全新手入坑——HTML标签
  2. Python3原生编写月份计算工具
  3. Android设置Activity全屏的两种方式
  4. Android(安卓)Watchdog 机制
  5. Android(安卓)xmlpull 方式解析xml文件
  6. Android(安卓)EditText回车不换行
  7. Android(安卓)包管理流程之包的解析
  8. Android(安卓)获取 当前日期的前后n天的实现
  9. 疯狂android讲义---Configuration

随机推荐

  1. 第七天android:弹球1
  2. 下载安装sdk-tools配置Android(安卓)SDK
  3. 打开eclipse的opens the android sdk and
  4. 检测android app是否第一次启动
  5. Android之Gradle的理解
  6. 【Android】高仿大众点评中的范围选择控
  7. Android中Handler的正确使用
  8. AES在Android、JAVA端正常加密解密
  9. android studio使用volley发送post和get
  10. Android从外部API获取json数据并以listvi