java解析xml之dom解析xml示例分享
package com.test;
import java.io.File;
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;
public class DomXML {
public static void main(String[] args) {
try {
File file = new File("e:/People.xml");
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(file);
Element element = document.getDocumentElement();
List<People> peopleList = new ArrayList<People>();
NodeList peopleNodes = element.getElementsByTagName("People");
for(int i=0;i<peopleNodes.getLength();i++){
People people = new People();
Element peopleElement = (Element) peopleNodes.item(i);
people.setId(peopleElement.getAttribute("id"));
NodeList childPeopleNodes = peopleElement.getChildNodes();
for(int j=0;j<childPeopleNodes.getLength();j++){
//DOM解析时候注意子节点前面的空格也会被解析
if(childPeopleNodes.item(j) instanceof Element){
Element childPeopleElement = (Element) childPeopleNodes.item(j);
if(childPeopleElement.getNodeType()==Node.ELEMENT_NODE){
if(childPeopleElement.getNodeName().equals("Name")){
people.setEnglishName(childPeopleElement.getAttribute("en"));
people.setName(childPeopleElement.getTextContent());
}
else if(childPeopleElement.getNodeName().equals("Age")){
people.setAge(childPeopleElement.getTextContent());
}
}
}
}
peopleList.add(people);
}
for(People people : peopleList){
System.out.println(people.getId()+"\t"+people.getName()+"\t"+people.getEnglishName()+"\t"+people.getAge());
}
} catch (Exception e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
- java使用xpath解析xml示例分享
- javascript读取Xml文件做一个二级联动菜单示例
- JavaScript获取XML数据附示例截图
- Java生成和解析XML格式文件和字符串的实例代码
- javascript创建createXmlHttpRequest对象示例代码
- java操作XML实例代码
- java使用xpath和dom4j解析xml
- java解析xml之jdom解析xml示例分享
- java解析xml之dom4j解析xml示例分享
- java解析xml之sax解析xml示例分享
- java使用dom4j解析xml配置文件实现抽象工厂反射示例
- java dom4j解析xml用到的几个方法
- javaScript如何生成xmlhttp
- javascript读取xml实现javascript分页
- Java如何读取XML文件 具体实现
- javascript获取xml节点的最大值(实现代码)
- java dom4j解析xml文件代码实例分享
- java使用jaxb操作xml示例
相关文章
详解Java阻塞队列(BlockingQueue)的实现原理
这篇文章主要介绍了详解Java阻塞队列(BlockingQueue)的实现原理,阻塞队列是Java util.concurrent包下重要的数据结构,有兴趣的可以了解一下2017-06-06
关于swagger配置及踩坑@Api参数postion无效解决接口排序问题
这篇文章主要介绍了关于swagger配置及踩坑@Api参数postion无效解决接口排序问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-06-06
SpringMVC之AbstractAnnotationConfigDispatcherSer解读
这篇文章主要介绍了SpringMVC之AbstractAnnotationConfigDispatcherSer,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-05-05


最新评论