xml

//得到读取的方法

public List<Person> getList(){

List<Person> ls=new ArrayList<Person>();

//获取pull解析的解析器

XmlPullParser parser = Xml.newPullParser();

try {

 * 解析器parser以第二个参数:inputEncoding 方式, 解析第一个参数:inputStream 里的内容

File file = new File(Environment.getExternalStorageDirectory(),"data.xml");

FileInputStream is = new FileInputStream(file);

          设置解析器的读取来源以及读取方式

parser.setInput(is, "utf-8");

//得到事件的类型

int type = parser.getEventType();

/** 循环解析

//如果事件类型不是结束文档,进行循环解析

while(type!=parser.END_DOCUMENT){

//得到节点的名字

String tagName = parser.getName();

//根据事件类型选择

switch (type) {

//选择的是开始标签

case XmlPullParser.START_TAG:

if ("person".equals(tagName)) {

p = new Person();

}//判断节点名字

else if ("name".equals(tagName)) {

p.setName(parser.nextText());

}else if ("age".equals(tagName)) {

p.setAge(parser.nextText());

}

break;

//当选择的是结束标签

case XmlPullParser.END_TAG:

if ("person".equals(tagName)) {

ls.add(p);

//添加集合后,把对象置空, 在循环

p=null;

}

break;

}

//进行下一个事件类型,再次循环

type = parser.next();

}

} catch (Exception e) {

}

return ls;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值