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>

Java代码实现:

import java.io.*;
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) {
OutputStreamWriter out = null;
try {
out = new OutputStreamWriter(new FileOutputStream("src/foo.xml"),"UTF-8");//写入文件(编码utf-8格式),文件路径要确认存在
createDocument().write( out );
// 字符串控制台输出
OutputFormat format = OutputFormat.createPrettyPrint(); //转换成字符串
format.setEncoding("UTF-8");
XMLWriter writer = new XMLWriter( System.out, format );
writer.write( createDocument() );
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out!=null) {
try {
out.flush();
out.close();
} catch (IOException e) {
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;
} }

转载地址:http://www.cnblogs.com/zhi-hao/p/4016363.html

使用Dom4j生成xml文件(utf-8编码)的更多相关文章

  1. 使用Dom4j生成xml文件

    场景:使用dom4j生成以下xml文件 <?xml version="1.0" encoding="UTF-8"?> <result> ...

  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和包含CDATA问题

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

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

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

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

    首先,指定XML格式,我指定的XML格式如下: <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <message&g ...

  8. PHP中的生成XML文件的4种方法(转)

    <?xml version="1.0" encoding="utf-8"?> <article> <item> <ti ...

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

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

随机推荐

  1. linux 常用文件命令记录

    服务开启命令 service  服务  start/stop/stauts 查看ip ifconfig 清屏 clear 显示当前所在位置 pwd 切换目录 cd 查看所有文件(包括隐藏) ls -a ...

  2. ahk键盘增强✨✨✨

    ahk键盘增强✨✨✨ ahk的一个键盘增强脚本,仅在winwods下可用,长期更新 仓库链接 首先感谢ahk的大神们,这个工具能极大地增加生产力 功能简介 myahk旨在增强windows下的键盘功能

  3. 4.RabbitMQ 4种交换模式

    请看 demo https://github.com/kevin-li-06/eshop.git

  4. json字符串转java对象,json中字段名称与对象属性名称不一致

    json字符串转java对象,json字段名称与对象属性名称不一致可以在对象属性上添加注解@SerializedName解决

  5. leetcode1261 Find Elements in a Contaminated Binary Tree

    """ Given a binary tree with the following rules: root.val == 0 If treeNode.val == x ...

  6. Mac安装软件提示破损

    安装提示破损 zhong终端输入 sudo spctl --master-disable 就可以顺利打开啦

  7. Golang的循环结构-for语句

    Golang的循环结构-for语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.for循环语法 循环结构在生活中的场景也非常的多,比如: ()上班族们每天朝九晚五的生活; ( ...

  8. HDU - 6130 Kolakoski (打表)

    题意:由1,2,2,1,1,2,1,2,2,1,2,2,1,1,2,1,1,2,2,1,……合并可得1,22,11,2,1,22,1,22,11,2,11,22,1,再由每个数的位数可得新序列,推出新 ...

  9. 九十八、SAP中ALV事件之十一,查看图片

    一.输入事务代码OAER 二.可以看到相关的图片文件了

  10. 032-PHP中关于数组排序的usort()函数

    <?php function re($a, $b) { return ($a < $b) ? 1 : -1; } $x = array(1, 3, 2, 5, 9); usort($x, ...