import java.io.File;
import java.util.Iterator;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

/**
 * 使用DOM4J解析phones.xml
 * @author Administrator
 *
 */
public class DOM4Jdemo {

public static void main(String[] args) {
  SAXReader saxReader =new SAXReader();
  try {
   //获取DOM树:document对象
   Document doc=saxReader.read("src\\book2\\unit6\\phones.xml");
   //拿到DOM树的根元素
   Element root=doc.getRootElement();
   //方法一:使用Iterator
   //Iterator elementIterator()获取Iterator对象
   //String attributeValue("属性名"):根据属性名拿到属性的值
//   Iterator<Element> itr=root.elementIterator();
//   while(itr.hasNext()){
//    Element elements=itr.next();
//    System.out.println(elements.attributeValue("name"));
//    Iterator<Element> childs=elements.elementIterator();
//    while(childs.hasNext()){
//     Element child=childs.next();
//     System.out.println("\t"+child.attributeValue("name"));
//    }
//   }
   //方法二:使用List
   //list elements()方法获取元素或子元素的集合。
   //String attributeValue("属性名"):根据属性名拿到属性的值
   List<Element> brands=root.elements();
   //增强型for遍历brand元素:
   for(Element brand:brands){
    System.out.println(brand.attributeValue("name"));
    //增强型for遍历子元素:
    List<Element> types=brand.elements();
    for(Element type:types){
     System.out.println("\t"+type.attributeValue("name"));
    }
   }   
  } catch (DocumentException e) {
   e.printStackTrace();
  }
 }

}

使用DOM4J解析XML文件的两种方法相关推荐

  1. java处理解析xml文件的几种方法及每种方法的区别

    文章目录 了解xml xml文件的结构 **特殊处理** **CDATA** 强烈建议 处理xml文件的几种方式 认识Document对象 解析xml文档 该选择哪种方式解析 DOM解析xml文件 D ...

  2. 使用dom4j解析xml文件报错 解决方法

    org.dom4j.DocumentException: unknown protocol: d Nested exception: unknown protocol: d 在网上查了资料,问题的原因 ...

  3. 解析xml文件的几种方法和原理

    第一种方法 对象模型 API 定义了层次化对象模型来表示 XML 文档.换句话说,对应 XML 语法中的每个概念定义相应的类:元素.属性.实体.文档.解析器读入 XML 文档的时候,建立 XML 语法 ...

  4. 用c++创建xml文件的两种方法

    //第一种 TiXmlDocument *myDocument = new TiXmlDocument(filefullPath.c_str()); int i = myDocument->Lo ...

  5. Java中DOM4J解析xml文件浅析

      DOM4J解析它是JDOM的一种智能分支.它合并了许多超出基本XML文档表示的功能,包括集成的XPath支持.XML Schema支持以及用于大文档或流化文档的基于事件的处理.它还提供了构建文档表 ...

  6. dom4j解析xml文件

    一.用SAXReader 方式解析:实例测试类TestXML     package *   import java.io.ByteArrayInputStream; import java.util ...

  7. 使用Trados翻译XML文件的三种方法

    XML是The Extensible Markup Language(可扩展标识语言)的缩写,是国际组织W3C于2000年10月6日发布的文件标准格式,目前版本是XML1.0版本,因此,现在越来越多的 ...

  8. java jdom dom4j_Java基础系列17:使用DOM、SAX、JDOM、DOM4J解析XML文件详解

    一 简介 在Java中,可以使用多种方式来解析XML文件,其中最常见的可能就是DOM.SAX.JDOM.DOM4J这四种方式了.其中,DOM和SAX这两种解析XML文件的方式有jdk自带的API,因此 ...

  9. java解析xml文件的几种方式(DOM解析)

    好久不用的东西,今天居然被面试官问到了.那既然这样,我们就一起回顾下java解析xml文件的几种方式吧. DOM解析 dom解析所需依赖是我们jdk自带的,所以只需要使用jdk为我们提供的接口即可上手 ...

最新文章

  1. 求助!!让我郁闷纠结恨的状况!!!
  2. 页面切换语言包使用session不用cookie
  3. 矿Spring入门Demo
  4. Spring Boot程序无法加载主类解决方法
  5. 个人对北理工2020级硕士研究生张××一篇学术论文涉嫌抄袭的看法
  6. path:path在路由中的使用
  7. 我是这样用extern的...
  8. Django 第十二课 【class meta】
  9. 【毕设】ASP.NET基于.NET的城市公交查询系统的设计与实现(源代码+论文)
  10. lisp 角平分线_《最佳Visual-LISP-及VBA-for-AutoCAD-2000程序123例》.pdf
  11. 为什么这么多的学校都选择这款收费管理系统?
  12. 推荐一个js脚本的字体拟合模型
  13. excel易用宝的修复
  14. Oracle PO ER Model
  15. 基于树莓派3b+学习视觉slam
  16. /etc/rc0.d----rc3.d---rcS.d这些目录的意义
  17. vue 仿豆瓣 爬坑之旅
  18. clinvar数据库
  19. 占书明:outlook发邮件时提示“出现意外错误”的原因及解决办法!
  20. 单片机--STM32

热门文章

  1. BZOJ 3653 谈笑风生
  2. 15.真实感图形——光照与明暗+光线跟踪+纹理映射+辐射度方法+阴影
  3. FL Studio 蜕变发展史及FL Studio21如何带你进入AI编曲时代
  4. 华硕Android原始密码,华硕路由器默认密码是多少?ASUS路由器初始密码介绍
  5. Mac系统如何取消自动播放视频和实况照片?
  6. spark-大表join优化方案
  7. 如何制作一封高打开率的邮件?
  8. Creo4.0安装与VS2015环境下的开发配置
  9. linux驱动管道,Xilinx Linux 如何理解V4L2的管道驱动程序
  10. 【101】Convertio-百种存储格式在线转换工具