Java DOM4J方式生成XML的方法

网友投稿 538 2023-01-25


Java DOM4J方式生成XML的方法

使用DOM4J方式生成XML文件的步骤如下:

引入JAR包

通过DocumentHelper类的createDocument()创建Document对象

通过Document的addElement()方法创建节点

通过Element的addAttribute()方法为节点添加属性

通过Element的setText()方法为节点设置内容

通过OutputFormat的createPrettyPrint()方法创建OutputFormat对象(会自动缩进、换行)

创建XMLWriter对象,将目的文件包装成OutputStream传入构造方法中,并将OutputFormat对象一并传入其中

通过XMLWriter的write()方法生成XML文件,并将Document对象作为参数传入

关闭XMLWriter对象

下面给出完整代码:

package util;

import java.io.File;

import java.io.FileOutputStream;

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 XMLUtils {

public void CreateXMLByDOM4J(File dest) {

// 创建Document对象

Document document = DocumentHelper.createDocument();

// 创建根节点

Element rss = document.addElement("rss");

//为rss根节点添加属性

rss.addAttribute("version", "2.0");

// 创建channel子节点

Element channel = rss.addElement("channel");

// 创建title子节点

Element title = channel.addElement("title");

// 设置title节点的值

title.setText("<![CDATA[上海移动互联网产业促进中心正式揭牌 ]]>");

// 创建输出格式(OutputFormat对象)

OutputFormat format = OutputFormat.createPrettyPrint();

///设置输出文件的编码

// format.setEncoding("GBK");

try {

// 创建XMLWriter对象

XMLWriter writer = new XMLWriter(new FileOutputStream(dest), format);

//设置不自动进行转义

writer.setEscapeText(false);

// 生成XML文件

writer.write(document);

//关闭XMLWriter对象

writer.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

若想自定义XML文件的编码方式,可使用OutputFormat对象的setEncoding()方法设置:

///设置输出文件的编码

format.setEncoding("GBK");

DOM4J会对某些特殊字符进行自动转义,若不想让DOM4J进行自动转义,我们可以通过XMLWriter的setEscapeText()方法进行设置。

默认情况下,DOM4J会自动进行转义,相当于writer.setEscapeText(true);

若不想让其自动转义,可使用writer.setEscapeText(false);


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:右键老弹出连接共享文件夹(鼠标右键共享文件夹同步)
下一篇:全链路接口自动化测试用例(常见的接口自动化测试框架)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~