场景:使用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;
} }

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

  1. 使用Dom4j生成xml文件(utf-8编码)

    xml文件内容: <?xml version="1.0" encoding="UTF-8"?> <result> <code> ...

  2. Java利用dom4j生成xml文件、解析XML

    package com.fq.fanqi; import java.io.File;import java.io.FileWriter;import java.io.IOException;impor ...

  3. JavaWeb_使用dom4j解析、生成XML文件

    dom4j 官网 xml解析DOM文档对象模型(树形结构) DOM方式解析:把xml文档加载到内存形成树形结构,可以进行增删改的操作 Learn   使用dom4j解析文件"NewFile. ...

  4. Java中使用DOM4J来生成xml文件和解析xml文件

    一.前言 现在有不少需求,是需要我们解析xml文件中的数据,然后导入到数据库中,当然解析xml文件也有好多种方法,小编觉得还是DOM4J用的最多最广泛也最好理解的吧.小编也是最近需求里遇到了,就来整理 ...

  5. 【dom4j xml】使用dom4j处理XML文件--测试过程遇到的问题

    首先 关于dom4j的API,有如下: 当然  其中的实体引用有以下: 测试使用环境: 使用Maven搭建web环境,pom.xml文件配置如下: <project xmlns="ht ...

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

    XML文件 <?xml version="1.0" encoding="UTF-8"?> <bookstore> <book id ...

  7. Dom4J生成xml和包含CDATA问题

    在 java注解生成xml和包含CDATA问题里面做了介绍,这里直接贴代码. 1:生成xml的java文件 package com.dufy.test.xml; import java.io.File ...

  8. Java生成XML文件与XML文件的写入

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6651643.html  既然能在代码中解析XML文档获取数据,当然也能通过代码动态生成XML文档了. 与解析X ...

  9. Android 解析XML文件和生成XML文件

    解析XML文件 public static void initXML(Context context) { //can't create in /data/media/0 because permis ...

随机推荐

  1. HDU4647+贪心

    /* 贪心. 题意:给定一些点 一些边 点和边都有价值.现在A B 选点.求A-B的maxVal 思路:分割边.边的1/2分给两个端点. 如果这两个点被同一个人取,则ok:否则 做减法也行,对题意无影 ...

  2. eclipse代码自动提示功能设置

    一 般默认情况下,Eclipse ,MyEclipse的代码提示功能是比Microsoft Visual Studio的差很多的,主要是Eclipse ,MyEclipse本身有很多选项是默认关闭的, ...

  3. iOS开发之集成ijkplayer视频直播

    ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijk ...

  4. [Unity菜鸟] Unity鼠标双击,鼠标函数整理(未完)

    1. 鼠标双击 void OnGUI() { Event Mouse = Event.current; if (Mouse.isMouse && Mouse.type == Event ...

  5. linux系统的crond服务

    linux系统中有一个服务,用来做周期性运行的例行任务,这个服务就是crond服务.执行这项服务的命令 就是crontab命令了.而linux下的任务调度又分为系统任务调度和用户任务调度两个大类. 系 ...

  6. 编程之美:1.9高效率安排见面会 图的m着色问题 回溯法

    原书问题,可以转换为图的m着色问题 ,下面该问题的代码 这里有参考ppt与code,免积分载 http://download.csdn.net/detail/u011467621/6341195 // ...

  7. 如何在VS2010中使用Async功能?

    伴随C#5.0的发布,“异步”特性越来越深入人心:在VS2012中早就可以使用它大大简化异步编程的痛苦,那么在VS2010中呢?我们无法尝鲜么?答案是“No”!,其实我们可以这样做: 1)必须把你的V ...

  8. Java之hashSet实现引用类型的禁止重复功能

    题目:在HashSet集合中添加Person对象,把姓名相同的人当作同一个人,禁止重复添加. 分析:1.定义一个Person类,定义name和age属性,并重写hashCode()和equals()方 ...

  9. LeetCode Power of Two (2的幂)

    题意:判断1个数n是否刚好是2的幂,幂大于0. 思路:注意会给负数,奇数.对于每个数判断31次即可. class Solution { public: bool isPowerOfTwo(int n) ...

  10. 15个实用的Linux find命令示例(一)

    除了在一个目录结构下查找文件这种基本的操作,你还可以用find命令实现一些实用的操作,使你的命令行之旅更加简易. 本文将介绍15种无论是于新手还是老鸟都非常有用的Linux find命令. 首先,在你 ...