欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JAVA使用JDOM读取XML文件

程序员文章站 2022-05-28 12:36:11
...

各种流行的程序设计语言都纷纷根据XML这一模型推出了自己的XML解析器,在JAVA世界里,APACHE组 织开发的XERCES应该是流行最广功能最为强大的XML解析器之一。但是由于W3C在设计DOM模型时,并不是针对某一种语言而设计,因此为了通用性, 加入了许多繁琐而不必要的细节 ,使JAVA程序员在开发XML的应用程序过程中感到不甚方便,因此JDOM作为一种新型的XML解析器横空出世,它不遵循DOM模型,建立了自己独立的 一套JDOM模型(注意JDOM决不是DOM扩展,虽然名字差不多,但两者是平行的关系),并提供功能强大使用方便的类库,使JAVA程序员可以更为高效 的开发自己的XML应用程序,并极大的减少了代码量,因此它很快得到了业内的认可,如JBUILDER这样的航空母舰级的重磅产品都以JDOM为XML解 析引擎,足见其名不虚传。 

JDOM官方网站:http://www.jdom.org

例子: 
sample.xml   ------------ 放在src的里面
<?xml version="1.0" encoding="UTF-8"?> 
  <HD> 
      <disk name="C"> 
        <capacity>8G</capacity> 
        <directories>200</directories> 
        <files>1580</files> 
      </disk> 
      <disk name="D"> 
        <capacity>10G</capacity> 
        <directories>500</directories> 
        <files>3000</files> 
      </disk> 
  </HD> 

java文件中 
  SAXBuilder sb=new SAXBuilder(); 
  Document doc=sb.build( Test.class.getClassLoader().getResourceAsStream("com/text/spring/sample.xml")); 获取文件在src中
  Element root=doc.getRootElement(); 
  System.out.println(root); 
  List<Element> list=root.getChildren("disk"); 
  for(int i=0;i<list.size();i++){ 
  Element element=(Element)list.get(i); 
  String name=element.getAttributeValue("name"); 
  String capacity=element.getChildText("capacity"); 
  String directories=element.getChildText("directories"); 
  String files=element.getChildText("files"); 
  System.out.println("磁盘信息:"); 
  System.out.println("分区盘符:"+name); 
  System.out.println("分区容量:"+capacity); 
  System.out.println("目录数:"+directories); 
  System.out.println("文件数:"+files); 
  System.out.println("-----------------------------------"); 
  }

转载于:https://my.oschina.net/jgy/blog/150158