使用Dom4j生成xml文件

场景:使用dom4j生成以下xml文件

<?xml version="1.0" encoding="UTF-8"?>

<result>
  <code>1</code>
  <data>
    <person>
      <name>张三</name>
      <id>1</id>
      <url>http://192.168.191.1:9999/TestWeb/c7fe21616d2a5e2bd1e84bd453a5b30f.jpg</url>
      <courses>
        <course>
          <courseName>语文</courseName>
          <courseMarks>90</courseMarks>
          <courseId>1</courseId>
        </course>
        <course>
          <courseName>数学</courseName>
          <courseMarks>80</courseMarks>
          <courseId>2</courseId>
        </course>
        <course>
          <courseName>英语</courseName>
          <courseMarks>70</courseMarks>
          <courseId>3</courseId>
        </course>
      </courses>
    </person>
    <person name="李四" id="2" url="http://192.168.191.1:9999/TestWeb/4052858c526002a712ef574ccae1948f.jpg">
      <course courseName="语文" courseMarks="91" courseId="1"/>
      <course courseName="数学" courseMarks="82" courseId="1"/>
      <course courseName="英语" courseMarks="73" courseId="1"/>
    </person>
  </data>
</result>

以下是实现代码:

import java.io.FileWriter;
import java.io.IOException;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

public class TestXML {

    public static void main(String[] args) {
        FileWriter out = null;
        try {
            out = new FileWriter( "src/foo.xml" );  //写入文件
            createDocument().write( out );

            OutputFormat format = OutputFormat.createPrettyPrint();  //转换成字符串
            format.setEncoding("UTF-8");
            XMLWriter writer = new XMLWriter( System.out, format );
            writer.write( createDocument() );
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            if (out!=null) {
                try {
                    out.close();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        }
    }

    public static Document createDocument() {
        Document document = DocumentHelper.createDocument();

        Element root = document.addElement( "result" );
        root.addElement("code").addText("1");
        Element data = root.addElement("data");

        Element person1 = data.addElement( "person" );
        person1.addElement( "name" ).setText("张三");
        person1.addElement( "id" ).setText("1");
        person1.addElement( "url" ).setText("http://192.168.191.1:9999/TestWeb/c7fe21616d2a5e2bd1e84bd453a5b30f.jpg");
        Element courses1 =person1.addElement( "courses" );
        Element course1 = courses1.addElement( "course" );
        course1.addElement( "courseName" ).setText("语文");
        course1.addElement( "courseMarks" ).setText("90");
        course1.addElement( "courseId" ).setText("1");
        Element course2 = courses1.addElement( "course" );
        course2.addElement( "courseName" ).setText("数学");
        course2.addElement( "courseMarks" ).setText("80");
        course2.addElement( "courseId" ).setText("2");
        Element course3 = courses1.addElement( "course" );
        course3.addElement( "courseName" ).setText("英语");
        course3.addElement( "courseMarks" ).setText("70");
        course3.addElement( "courseId" ).setText("3");

        Element person2 = data.addElement( "person" )
                .addAttribute( "name", "李四" )
                .addAttribute( "id", "2" )
                .addAttribute("url", "http://192.168.191.1:9999/TestWeb/4052858c526002a712ef574ccae1948f.jpg");
        person2.addElement( "course" )
        .addAttribute( "courseName", "语文" )
        .addAttribute( "courseMarks", "91" )
        .addAttribute( "courseId", "1" );
        person2.addElement( "course" )
        .addAttribute( "courseName", "数学" )
        .addAttribute( "courseMarks", "82" )
        .addAttribute( "courseId", "1" );
        person2.addElement( "course" )
        .addAttribute( "courseName", "英语" )
        .addAttribute( "courseMarks", "73" )
        .addAttribute( "courseId", "1" );

        return document;
    }

}
时间: 2024-10-13 17:15:56

使用Dom4j生成xml文件的相关文章

dom4j生成xml文件

1 package xml; 2 3 import java.io.FileWriter; 4 import java.io.IOException; 5 import java.io.Writer; 6 import org.dom4j.Document; 7 import org.dom4j.DocumentHelper; 8 import org.dom4j.Element; 9 import org.dom4j.io.OutputFormat; 10 import org.dom4j.i

Java利用dom4j生成xml文件

package com.fq.fanqi; import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.io.StringWriter;import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.Element;import org.dom4j.io.OutputFormat;import org.

dom4j创建xml文件

import java.io.FileWriter; import java.io.IOException; import java.io.Writer; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.XMLWriter; /** * 使用dom4j生成xml文档 * @author Administrator * */ publi

使用DOM4J解析XMl文件与读取XML文件

XML文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <bookstore> 3 <book id="1"> 4 <name>冰与火之歌</name> 5 <author>乔治马丁</author> 6 <year>2014</year> 7 <price>89</price&g

使用Dom4j创建XML文件

代码如下: 1 package xml; 2 3 import java.io.FileWriter; 4 import java.io.IOException; 5 import java.io.Writer; 6 import org.dom4j.Document; 7 import org.dom4j.DocumentHelper; 8 import org.dom4j.Element; 9 import org.dom4j.io.OutputFormat; 10 import org.d

使用XML序列化器生成XML文件和利用pull解析XML文件

首先,指定XML格式,我指定的XML格式如下: <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <message> <sms> <body> 陈驰0 </body> <date> 1462162910995 </date> <address> 1380 </address> <type> 1 </type> &

利用oxygen编辑并生成xml文件,并使用JAVA的JAXB技术完成xml的解析

首先下载oxygen软件(Oxygen XML Editor),目前使用的是试用版(可以安装好软件以后get trial licence,获得免费使用30天的权限,当然这里鼓励大家用正版软件!!!) 1 首先建立一个空白XML文件,直接点击下图所示即可: 2 可以使用xml文本编辑界面,或者使用xml树状图编辑界面 切换到xml树状图编辑界面的方法为: 即可调出当前xml文件所对应的xml树状图编辑界面 3 设计并编辑xml文件 根据自己的需要可以利用xml树状图操作界面来方便的设计自己的xml

使用Pull解析器生成XML文件

有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使用pull解析器生成XML文件,这里推荐大家使用Pull解析器. 1.使用Pull解析器生成一个与itcast.xml文件内容相同的myitcast.xml文件,代码在下方 public static String writeXML(List<Person> persons, Writer wri

5.29日 自己程序的编写,目的:生成xml文件

1.创建了XMLModel这个类:本来还有个rebuildformXML的方法,但是现在用不到,以后再说. public interface XmlModel { public void initModel(); public void doSaveXML(); } 2.对AbstractModel这个类进行了修改,最终变为: package hellogef.model; import java.beans.PropertyChangeListener; import java.beans.P