我有一个问题,当我从 xml 中删除子节点时,xml 中会有一个空行。该节点已正确删除,但我不想要一个空行,而且我不知道该空行来自哪里,因为我没有编写 xml,但 Javas Transformer 正在为我做这件事:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
TransformerFactory tf = TransformerFactory.newInstance();
Transformer t;
DocumentBuilder db;
db = dbf.newDocumentBuilder();
Document doc = db.parse(myXml);
//get the node I want to remove
Node n = getMyNodeToRemove(doc);
n.getParentNode().removeChild(n);
//write the xml
t = tf.newTransformer();
DOMSource src = new DOMSource(doc);
StreamResult result = new StreamResult(xml);
t.transform(src, result);
我要编辑的 xml 实际上非常简单,如下所示:
<parent>
<childnode 1>
<childnode i want to remove>
<childnode 2>
<childnode 3>
</parent>
删除孩子后,它看起来像这样:
<parent>
<childnode 1>
<childnode 2>
<childnode 3>
</parent>
但我想要的是这样的:
<parent>
<childnode 1>
<childnode 2>
<childnode 3>
</parent>
是否有一些函数可以在我缺少的父节点上调用?或者 xmls 是否有明确的漂亮打印功能?