Pull解析器读取XML文件,及保存数据到xml文件中
来源:互联网 发布:淘宝发布产品 编辑:程序博客网 时间:2024/06/15 04:52
package com.cyh.service;import java.io.InputStream;import java.io.OutputStream;import java.util.ArrayList;import java.util.List;import org.xmlpull.v1.XmlPullParser;import org.xmlpull.v1.XmlSerializer;import android.util.Xml;import com.cyh.domain.Person;public class PersonService {/** * 解析XML Pull破解器方法 * @param xml * @return * @throws Exception */public static List<Person> getPersons(InputStream xml) throws Exception{List<Person> persons = null;Person person = null;//XmlPullParser parser = XmlPullParserFactory.newInstance().newPullParser();XmlPullParser parser = Xml.newPullParser();//为Pull破解器设置要解析的XMLparser.setInput(xml, "UTF-8");int event = parser.getEventType();while(event != XmlPullParser.END_DOCUMENT){switch (event){case XmlPullParser.START_DOCUMENT:persons = new ArrayList<Person>();break;case XmlPullParser.START_TAG:if("person".equals(parser.getName())){person = new Person();int id = Integer.parseInt(parser.getAttributeValue(0));person.setId(id);}if("name".equals(parser.getName())){String name = parser.nextText();person.setName(name);}if("age".equals(parser.getName())){int age = Integer.parseInt(parser.nextText());person.setAge(age);}break;case XmlPullParser.END_TAG:if("person".equals(parser.getName())){persons.add(person);person = null;}break;}event = parser.next();}return persons;}/** * 保存数据到XML文件中 * @param list * @param out * @throws Exception */public static void save(List<Person> list, OutputStream out) throws Exception{XmlSerializer serializer = Xml.newSerializer();serializer.setOutput(out, "UTF-8");serializer.startDocument("UTF-8", true);//文档开始serializer.startTag(null, "persons");for(Person p:list){serializer.startTag(null, "person");serializer.attribute(null, "id", p.getId().toString());serializer.startTag(null, "name");serializer.text(p.getName());serializer.endTag(null, "name");serializer.startTag(null, "age");serializer.text(p.getAge().toString());serializer.endTag(null, "age");serializer.endTag(null, "person");}serializer.endTag(null, "persons");serializer.endDocument();//文档结束out.flush();out.close();}}
0 0
- Pull解析器读取XML文件,及保存数据到xml文件中
- android下pull解析器读取和保存xml文件
- Android中使用xml保存数据(xml文件序列化)及使用pull解析xml文件
- 使用Pull解析器读取XML文件
- 使用pull解析器读取xml文件
- 使用Pull解析器读取XML文件
- 使用Pull解析器读取XML文件
- 使用Pull解析器读取XML文件
- Android中运用Pull解析器读取XML文件
- Android中使用Pull解析器读取XML文件
- xml解析(读取xml,保存文件到xml)
- Android中使用Pull解析器生成XML文件和读取xml文件
- 解析xml文件保存到List中
- .net保存数据到XML文件中
- Pull解析XML文件
- Pull解析xml文件
- pull解析xml文件
- Pull解析xml文件
- 利用Aspose.Words 把word 生成图片
- 卡尔曼滤波资料分享
- Uva-11183-Teen Girl Squad
- tcp服务器中的一个问题
- 韩顺平java视频---简单版QQ
- Pull解析器读取XML文件,及保存数据到xml文件中
- vs之程序调试
- 博客学习三
- SQLServer2008设置开启INTERNET远程连接
- const在c和c++中的区别
- opencv 仿射变换 根据眼睛坐标进行人脸对齐 计算变换后对应坐标
- iOS 改变UITextField中光标颜色
- Cricuit Switched Fallback (CSFB) : CDMA2000 1XRTT
- 设置WS_EX_CLIENTEDGE窗口风格