文章目录
- 功能描述
- 实现代码
功能描述
有以下xml内容,需要转成String字符串。同时,要去掉文中所有格式。
<root><student><name>张三</name><sex>男</sex><age>16</age><class>1班</class></student>
</root>
实现代码
要将 XML 转换为字符串并去除格式,您可以使用 dom4j 提供的 OutputFormat 类,并设置其格式化选项为不缩进和不添加换行符。以下是一个示例代码片段,演示了如何将 XML 转换为没有格式的字符串:
下面是一个示例代码片段:
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;public class XmlToStringWithoutFormattingExample { public static void main(String[] args) { // 创建一个包含一些初始内容的 XML 文档 Document document = DocumentHelper.createDocument(); Element rootElement = document.addElement("root"); Element studentElement = rootElement.addElement("student"); Element nameElement = studentElement.addElement("name").addText("张三"); Element sexElement = studentElement.addElement("sex").addText("男"); studentElement.addElement("age").addText("16"); Element classElement = studentElement.addElement("class").addText("1班"); try { // 使用 OutputFormat 进行格式化设置 OutputFormat format = OutputFormat.createCompactFormat(); // 设置是否缩进,默认为 false format.setIndent(false); // 创建 StringWriter 来保存转换后的无格式 XML 字符串 java.io.StringWriter stringWriter = new java.io.StringWriter(); // 创建 XMLWriter 对象并设置输出流和格式化参数 XMLWriter writer = new XMLWriter(stringWriter, format); // 将 Document 对象写入到输出流中,并触发转换操作 writer.write(document); String xmlStringWithoutFormatting = stringWriter.toString(); System.out.println(xmlStringWithoutFormatting); } catch (Exception e) { e.printStackTrace(); } }
}
运行以上代码会输出:
<?xml version="1.0" encoding="UTF-8"?>
<root><student><name>张三</name><sex>男</sex><age>16</age><class>1班</class></student></root>