我有一些 Java (5.0) 代码从各种(缓存的)数据源构造 DOM,然后删除某些不需要的元素节点,然后使用以下命令将结果序列化为 XML 字符串:
// Serialize DOM back into a string
Writer out = new StringWriter();
Transformer tf = TransformerFactory.newInstance().newTransformer();
tf.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
tf.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
tf.setOutputProperty(OutputKeys.INDENT, "no");
tf.transform(new DOMSource(doc), new StreamResult(out));
return out.toString();
但是,由于我要删除几个元素节点,因此最终的序列化文档中会出现很多额外的空白。
是否有一种简单的方法可以在将 DOM 序列化为字符串之前(或同时)从 DOM 中删除/折叠无关的空格?