zoukankan      html  css  js  c++  java
  • jdom学习:读取xml文件

     用JDOM读取XML文件需先用org.jdom.input.SAXBuilder对象的build()方法创建Document对象,然后用Document类、Element类等的方法读取所需的内容。IBM : developerWorks 中国站上有一个很好的例子:

     1 <?xml version="1.0" encoding="UTF-8"?> 
     2 <HD> 
     3   <disk name="C"> 
     4     <capacity>8G</capacity> 
     5     <directories>200</directories> 
     6     <files>1580</files> 
     7   </disk> 
     8 
     9   <disk name="D"> 
    10     <capacity>10G</capacity> 
    11     <directories>500</directories> 
    12     <files>3000</files> 
    13   </disk> 
    14 </HD> 

    上面的sample.xml文档,描述了某台电脑中硬盘的基本信息(根节点<HD>代表硬盘,<disk>标签代表硬盘分区,从它的name属性可以看出有两个盘符名称为"C"和"D"的分区;每个分区下都包含<capacity>,<directories><files>三个节点,分别代表了分区的空间大小、目录数量、所含文件个数)


    下面的程序读取此文件中的信息:

     1 import java.util.*; 
     2 import org.jdom.*; 
     3 import org.jdom.input.SAXBuilder; 
     4 public class Sample1 { 
     5   public static void main(String[] args) throws Exception{  
     6     SAXBuilder sb=new SAXBuilder(); 
     7     Document doc=sb.build("sample.xml"); //构造文档对象
     8     Element root=doc.getRootElement(); //获取根元素
     9     List list=root.getChildren("disk");//取名字为disk的所有元素 
    10     for(int i=0;i<list.size();i++){ 
    11        Element element=(Element)list.get(i); 
    12        String name=element.getAttributeValue("name"); 
    13        String capacity=element.getChildText("capacity");//取disk子元素capacity的内容 
    14        String directories=element.getChildText("directories"); 
    15        String files=element.getChildText("files"); 
    16        System.out.println("磁盘信息:"); 
    17        System.out.println("分区盘符:"+name); 
    18        System.out.println("分区容量:"+capacity); 
    19        System.out.println("目录数:"+directories); 
    20        System.out.println("文件数:"+files); 
    21        System.out.println("-----------------------------------"); 
    22     }   
    23   } 
    24 } 

    运行结果:
    C:java>java   Sample1
    磁盘信息:
    分区盘符:C
    分区容量:8G
    目录数:200

    文件数:1580
    -----------------------------------
    磁盘信息:
    分区盘符:D

    分区容量:10G
    目录数:500
    文件数:3000
    -----------------------------------

  • 相关阅读:
    转 SpringCloud服务注册中心比较:Consul vs Zookeeper vs Etcd vs Eureka
    转 微服务的4个设计原则和19个解决方案
    骑士问题
    种树(洛谷P1250)
    你的飞碟在这儿(洛谷P1200)
    Hello world
    [zt][cocos2dxwin32] 安装部署流程整理
    (ZT)关于IAP防止破解的几点
    (ZT)UIImage应用与内存管理
    在Mac上发布QT的程序
  • 原文地址:https://www.cnblogs.com/zhaojia-dream/p/3418286.html
Copyright © 2011-2022 走看看