import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import cn.itcast.domain.Person;
/**
* 采用DOM完成XML内容的解析
*/
public class DOMPersonService {
public static List<Person> getPersons(InputStream inputStream) throws Exception{
List<Person> persons = new ArrayList<Person>();
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(inputStream);
Element element = document.getDocumentElement();
NodeList perosnNodes = element.getElementsByTagName("person");
for(int i=0 ; i < perosnNodes.getLength() ; i++){
Element personElement = (Element) perosnNodes.item(i);
Person person = new Person();
int id = new Integer(personElement.getAttribute("id"));
person.setId(id);
NodeList childNodes = personElement.getChildNodes();
for(int y = 0 ; y < childNodes.getLength() ; y++){
if(childNodes.item(y).getNodeType()==Node.ELEMENT_NODE){
if("name".equals(childNodes.item(y).getNodeName())){
String name = childNodes.item(y).getFirstChild().getNodeValue();
person.setName(name);
}else if("age".equals(childNodes.item(y).getNodeName())){
String age = childNodes.item(y).getFirstChild().getNodeValue();
person.setAge(new Short(age));
}
}
}
persons.add(person);
}
return persons;
}
}
分享到:
相关推荐
Android使用Dom方式解析XML,虽然xml文件太大时不建议用dom方式解析,但是如果文件比较小,也不失为一种选择。项目中xml放在assets文件夹下,view绑定使用butterknife
包括android代码实例以及个人对Dom解析xml文件的总结文档。
android上使用DOM解析XML的简单示例。android4.0以上。
android dom解析XMl文件,这是一个简单的小示例,希望对大家有所帮助
android为我们提供了多种解析方式,DOM解析,代码操作简单,一直为解析xml文件的一个不错的选择
android dom方式解析xml 完整的工程,直接可运行
本文实例讲述了Android中DOM解析xml文件的方法。分享给大家供大家参考,具体如下: 一、在assets文件中写xml文件 <?xml version=1.0 encoding=UTF-8?> 李明 <age>30 李向梅 <age>25 二、在...
android 使用dom解析全世界地区城市xml文件并存入数据库
提供了android中使用dom、pull、sax三种方式进行xml解析,xml文件放置在assets文件夹下,view绑定使用butterknife
支持SAX解析XML文件,DOM解析XML文件,Pull解析器解析XML文件,Pull生成XML文件,JAVA和Kotlin两种语言编写
Android 创建与解析XML Dom4j方式
android版本更新、dom解析xml、新版本下载与安装、web端项目
用Java解析XML文档,最常用的有两种方法:使用基于事件的XML简单API(Simple API for XML)称为SAX和基于树和节点的文档对象模型(Document Object Module)称为DOM。Sun公司提供了Java API for XML Parsing(JAXP)...
使用Android自带的工具,解析xml文件内容,并显示在程序界面上
该Demo是通过Dom方式来解析xml,运行环境为androidStudio。
pull,sax,dom,解析XML的例子:各一个
Android解析xml(2)---DOM解析
Android中解析xml的三种方式DOM SAX PULL,以及各自优缺点
简单的sax和dom解析xml实例 注意 在android上运行的.
读取和解析xml文件