DOM4j处理XML文件时,写入文件后发现XML文件很多空行,而且文件也变大了,我现在是用XML文件来传输数据,不知道怎么处理这种问题.
------解决方案--------------------
你是想把这些空行去掉?
------解决方案--------------------
写文件的时候 设置一下 缩进格式 试试
------解决方案--------------------
是不是存储的时候格式问题.设置一下存储格式试试.
------解决方案--------------------
Format format = Format.getCompactFormat();
format.setEncoding("utf-8");
format.setIndent(" ");
XMLOutputter XMLOut = new XMLOutputter(format);
XMLOut.output(Doc, new FileOutputStream(xmlname));
------解决方案--------------------
DOM4J也可以
- Java code
Document document = DocumentHelper.createDocument(); XMLWriter writer = null; OutputFormat format = OutputFormat.createPrettyPrint(); format.setEncoding("UTF-8"); format.setExpandEmptyElements(true); format.setTrimText(false); format.setIndent(" ");
------解决方案--------------------
刚学这个
------解决方案--------------------
可以设置的,我就没碰到过空行的情况
------解决方案--------------------
http://javaprogram.5d6d.com/blog.php?tid=628
- Java code
/**
* 通过 org.dom4j.io.OutputFormat 来设置XML文档输出格式
*/
OutputFormat format = OutputFormat.createPrettyPrint(); // 设置XML文档输出格式
format.setEncoding("UTF-8"); // 设置XML文档的编码类型
format.setSuppressDeclaration(true);
format.setIndent(true); // 设置是否缩进
format.setIndent(" "); // 以空格方式实现缩进
format.setNewlines(true); // 设置是否换行
try {
/** 将document中的内容写入文件中 */
XMLWriter writer = new XMLWriter(new FileWriter(new File(
xmlFileName)), format);
writer.write(this.getDocument());
writer.close();
} catch (Exception ex) {
System.out.println(ex.getMessage());
}