XML解析技术 dom4j读取技术
2018-03-09 18:24
381 查看
package cn.dom4j; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.List; import org.dom4j.Attribute; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.SAXReader; public class ReadXML { public static void readXML(){ //创建XML文档读取的dom4j对象 SAXReader reader = new SAXReader(); //创建输入流 FileInputStream in = null; try { in = new FileInputStream("src/person.xml"); //读取文档 返回文档对象 Document doc = reader.read(in); //获得根元素 Element root = doc.getRootElement(); //获得元素名称 String elementName = root.getName(); System.out.println(elementName); //获得root下的孩子元素 List<Element> eList = root.elements(); //遍历子元素 for(Element element :eList){ String elename = element.getName(); System.out.println(elename); //获取每一个子元素的属性 List<Attribute> aList = element.attributes(); //遍历子元素的属性 /** for(Attribute attr : aList){ //获得属性名字 String attrName = attr.getName(); //获得属性值 String attrVal = attr.getText(); //打印属性名字和属性值! System.out.println("属性名字:" + attrName + "属性值" + attrVal); } */ //根据属性名 获得属性对象 /*Attribute idattr = element.attribute("id"); Attribute genderattr = element.attribute("gender"); */ //知道属性名字 直接获取属性值 /*String attrValue = element.attributeValue("id"); System.out.println(attrValue); String attrGender = element.attributeValue("gender"); System.out.println(attrGender); */ } } catch (Exception e) { e.printStackTrace(); }finally{ if(in != null) try { if(in != null){ in.close(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } public static void readXML1(){ //创建XML文档读取的dom4j对象 SAXReader reader = new SAXReader(); //创建输入流 FileInputStream in = null; try { in = new FileInputStream("src/person.xml"); //读取文档 返回文档对象 Document doc = reader.read(in); //获得根元素 Element root = doc.getRootElement(); //获得元素名称 String elementName = root.getName(); System.out.println(elementName); //获得root下的孩子元素 List<Element> eList = root.elements(); //遍历子元素 for(Element element :eList){ //获得子元素person中的子元素 List<Element> eList1 = element.elements(); //循环person中所有的子元素 for(Element ele : eList1){ //获得person下子元素的名字 String eleName = ele.getName(); //获得person下子元素的值 String eleText = ele.getText(); System.out.println("元素名" + eleName + "值" + eleText); } } } catch (Exception e) { e.printStackTrace(); }finally{ if(in != null) try { if(in != null){ in.close(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
相关文章推荐
- Java:XML篇,使用DOM4J读取并解析XML
- Java xml 操作(Dom4J修改xml   + xPath技术  + SAX解析 + XML约束)
- xml解析技术介绍(dom4j,dom,jdom,sax)
- dom4j读取,解析xml
- Dom4j解析XML来读取数据库配置文件信息
- Java中四种XML解析技术对比(Dom、Sax、Dom4j JDom)
- Dom4j和XPath的XML解析技术
- 简单使用DOM4J解析XML(如何使用dom4j对xml进行读取)
- Java xml 操作(Dom4J修改xml   + xPath技术  + SAX解析 + XML约束)
- XML解析技术:dom4j(一)
- XML系列:(6)XML解析-Dom4j的DOM解析方式读取XML
- Java xml 操作(Dom4J修改xml   + xPath技术  + SAX解析 + XML约束)
- XML系列:(8)XML解析-Dom4j的xPath技术
- XML-解析技术续(dom4j解析)
- XML学习总结-xml概念和dom4j解析技术-(一)
- Java中四种XML解析技术【JSP、SAX、JDOM、DOM4J】
- 909422229_DOM4J读取XML文件与解析StringXML
- JavaWeb系列之四(XML的解析技术(dom,sax)和解析器(jaxp,dom4j))
- Dom、Dom4J、Sax、JDom、读取(解析)Xml
- 接连上篇章——Dom、Dom4J、Sax、JDom、读取(解析)Xml——ampie_data.xml