使用PULL方式解析XML资源文件下面的xml文件
public class MainActivity extends Activity {
private Button btn = null;
private List<Map<String,String>> list = null;
private XmlResourceParser xrp = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button)findViewById(R.id.btn);
list = new ArrayList<Map<String,String>>();
xrp = this.getResources().getXml(R.xml.students);
btn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
Map<String,String> map = null;
String tag = "";
try {
while(xrp.getEventType() != XmlResourceParser.END_DOCUMENT){
switch(xrp.getEventType()){
case XmlResourceParser.START_TAG:
tag = xrp.getName();
if(tag.equalsIgnoreCase("student")){
map = new HashMap<String,String>();
}else if(map != null){
if(tag.equalsIgnoreCase("id")){
map.put("id", xrp.nextText());
}else if(tag.equalsIgnoreCase("name")){
map.put("name", xrp.nextText());
}
}
break;
case XmlResourceParser.END_TAG:
if(xrp.getName().equalsIgnoreCase("student") && map!=null){
list.add(map);
map = null;
}
break;
}
xrp.next();
}
}catch (XmlPullParserException e) {
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
for(int i=0; i<list.size(); i++){
Log.d("+id+", list.get(i).get("id"));
}
}
});
}
}
xml/students.xml
<?xml version="1.0" encoding="UTF-8"?>
<students>
<student>
<id>1</id>
<name>张三</name>
</student>
<student>
<id>2</id>
<name>李四</name>
</student>
<student>
<id>3</id>
<name>王五</name>
</student>
</students>
使用PULL方式解析XML资源文件下面的xml文件的更多相关文章
- Android 读取assets文件下的txt文件
android 读取assets文件下的txt文件,解决了读取txt文件的乱码问题: package com.example.com.scrollview; import java.io.Buffer ...
- php 获取文件下的所有文件。php 获取文件下的所有子文件。php 递归获取文件下的所有文件。封装好的方法
//php 获取文件下的所有文件.php 获取文件下的所有子文件.php 递归获取文件下的所有文件.直接上封装好的php代码 <?php //文件路径 $dir = dirname(__FILE ...
- SAP BO WebI 如何连接webi server folder下面的EXCEL文件作为数据源
昨天做Webi Report,需要连接一个在Webi Server Folder下面的EXCEL文件作为数据源,然后再去生成相应的报表,找了半天才找到可以连接Webi Server Folder的EX ...
- 使用pull方式解析xml文件示例:
网上的示例太多,基本类似,个人在此做个简单的总结: 1.首先在工程的asserts目录下建一个book.xml文件: <?xml version="1.0" encoding ...
- 下载放在resource下面的excel文件
1.将excel文件放项目resources目录下 2.打包的时候排除指定后缀文件,否则打包时会出现文件损坏的情况 <configuration> <encoding>UTF- ...
- android在当前app该文件下创建一个文件夹
/********************************************************************* * Author : Samson * Date ...
- Pull方式解析XML文件
package com.pingyijinren.test; import android.content.Intent; import android.os.Handler; import andr ...
- ssm中整合Mybatis可以扫描到放在mapper下面的xml文件的方法
mybatis配置时出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 解决方法有两种: ...
- 解决android中Layout文件下的xml文件配好后,R类中不能自动生成相应代码
不能更新的原因: 1.在xml文件中代码错误或者格式错误 2.eclipse 编译器是老版本 3.布局文件的文件名有大写字母 4.含有相同文件名.格式的xml文件 解决方法: 1.找到出错的xml文件 ...
随机推荐
- ORTP库API使用入门
一.简介 ORTP是一个支持RTP以及RFC3550协议的库,有如下的特性: (1)使用C语言编写,可以工作于windows, Linux, 以及 Unix平台 (2)实现了RFC3550协议,提供简 ...
- <php>删除(有内容的)文件夹函数程序
function deldir($dirname) { if(!file_exists($dirname)) {//判断文件夹是否存在 die("文件夹不存在!");//作用等于( ...
- mysql 存储过程:提供查询语句并返回查询执行影响的行数
mysql 存储过程:提供查询语句并返回查询执行影响的行数DELIMITER $$ DROP PROCEDURE IF EXISTS `p_get_select_row_number`$$ CREAT ...
- Pojo和JavaBean的区别(转载)
OJO(Plain Old Java Object)这个名字用来强调它是一个普通java对象,而不是一个特殊的对象. 2005年11月时,“POJO”主要用来指代那些没用遵从特定的Java对象模型,约 ...
- hdu4055 dp
http://acm.hdu.edu.cn/showproblem.php?pid=4055 Problem Description The signature of a permutation is ...
- MongoDB分片技术[转]
8天学通MongoDB——第六天 分片技术 在mongodb里面存在另一种集群,就是分片技术,跟sql server的表分区类似,我们知道当数据量达到T级别的时候,我们的磁盘,内存 就吃不消了,针 ...
- [RxJS] Getting Input Text with Map
By default, Inputs will push input events into the stream. This lesson shows you how to use map to c ...
- 【Android 应用开发】 ActionBar 样式详解 -- 样式 主题 简介 Actionbar 的 icon logo 标题 菜单样式修改
作者 : 万境绝尘 (octopus_truth@163.com) 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/3926916 ...
- Linux 时间同步配置(转)
一. 使用ntpdate 命令 1.1 服务器可链接外网时 # crontab -e 加入一行: */1 * * * * ntpdate 210.72.145.44 210.72.145.44 为中国 ...
- 安装VMware Sphere ESXi 5.5
安装VMware Sphere ESXi 5.5 1.准备 待安装ESXi 5.5的机器需要大于2GB以上内存,并且支持64位和虚拟化. 下载:VMware-VMvisor-Installer-5.5 ...