分享

java中使用jdom生成xml

 真爱图书 2010-06-12

 使用Java处理XML数据

使用Java处理XML文档数据,不仅可以做到对XML数据的解析,同时也可以实现XML文档的生成,以及在已经存在的XML文档中进行添加元素、删除元素、修改元素等一系列的操作。在这一节中,将向读者介绍使用JDOM来实现对XML数据的处理。

JDOM是一个开源项目,它基于树型结构,利用纯Java技术对XML文档实现解析、生成、序列化等操作。JDOM直接为Java编程服务。它利用Java语言的诸多特性(方法重载、集合概念以及映射),把SAX和DOM的功能有效地结合起来。因此,只需要有一个JDOM的jar包,就可以在Java程序中,使用JDOM来实现对XML数据的处理。

使用JDOM来生成XML文档

下面介绍使用Eclipse来加载JDOM的jar包,同时利用JDOM来创建并生成一个XML文档。步骤如下。

(1)在Eclipse中建立工程项目。单击 “File”|“New”|“Project”命令菜单。

Java中使用JDOM来生成XML文档

(2)在弹出窗口中选择“Java Project”,并单击“Next >”按钮。

(3)在弹出的“New Java Project”窗口中,在“Project name”文本框内输入工程名,例如输入“JDOMDemo”,之后单击“Finish”按钮。

(4)在JDOM的官方网站http://www./dist/binary/下载JDOM的jar包。
(5)下载完毕后,将其解压缩,解压缩后的“jdom.jar”文件即JDOM的jar包。

(6)在已经建立好的Eclipse工程项目中,导入jdom.jar包。鼠标移至工程名“JDOMDemo”上,单击鼠标右键,在弹出菜单中单击“Properties”菜单项。

(7)在出现的“Properties for JDOMDemo”窗口中,选择“Java Build Path”选项,再在右边选择“Libraries”标签,并在其窗口中单击“Add External JARs…”按钮(添加Eclipse外部jar包。
(8)在出现的JAR Selection窗口中,选择之前下载好的“jdom.jar”文件,并单击“打开”按钮,如图22-13所示。

(9)完成以上的几步后,会在“Libraries”标签窗口中发现多出了jdom一项,就说明导入成功了,并点击“OK”按钮,如图22-14所示。Java中使用JDOM来生成XML文档

(10)在工程项目中添加生成XML文档的类CreateXML。

(11)在代码编辑窗口中编写代码,用于生成XML文档。

Java中使用JDOM来生成XML文档

代码22-7   使用JDOM生成XML文档CreateXML.java

import java.io.*;

import java.util.*;

import org.jdom.*;

import org.jdom.input.*;

import org.jdom.output.*;

public class CreateXML

{

      

       //声明XML中所有的元素

       Element customer,name,age,sex,address,street,city,district;

      

       public CreateXML()

       {

             //创建customer元素,并设置为XML文档的根节点

             customer = new Element("customer");

             Document myDocument = new Document(customer);

            

             //创建XML文档中的其他元素,并初始化元素名

             name = new Element("name");

             age = new Element("age");

             sex = new Element("sex");

             address = new Element("address");

             street = new Element("street");

             city = new Element("city");

             district = new Element("district");

            

             //给XML文档中的每一个元素添加内容值

             name.addContent("Wang Xiao Yue");

             age.addContent("24");

             sex.addContent("male");

             street.addContent("No.1 East Rood,ShangDi");

             district.addContent("Hai Dian");

             city.addContent("Bei Jing");

            

             //将street、district和city元素作为子元素,添加到address元素中

             address.addContent(street);

             address.addContent(district);

             address.addContent(city);

            

             //将address元素作为子元素,添加到customer根元素中

             customer.addContent(name);

             customer.addContent(age);

             customer.addContent(sex);

             customer.addContent(address);

            

             try

             {

                   //创建XML文件输出流

                   XMLOutputter fmt = new XMLOutputter();

                  

                   //创建文件输出流

                   FileWriter writer = new FileWriter("c:\\customer.xml");

                  

                   //设置所创建的XML文档的格式

                   Format f = Format.getPrettyFormat();

                   fmt.setFormat(f);

                  

                   //将生成的XML文档写入到"c:\customer.xml"文件中

                   fmt.output(myDocument, writer);

                   writer.close();

             }

             catch (Exception e) {e.printStackTrace();}

       }

       public static void main(String[] args)

       {

             // TODO Auto-generated method stub

             CreateXML createXML = new CreateXML();

       }

}

程序运行后,会在“C:\”目录下生成 “customer.xml”文件。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多