大多数Web浏览器在TEXT_NODE
s中的XML文档元素之间保留空格和新行。我不喜欢那样。我正在解析XML文档,修改它,然后将其序列化为String。我希望String不包含额外的空格或节点之间的换行符。例如:
<?xml version="1.0" ?>
<bookshelf>
<book>
<author>John Doe</author>
<title>My Favorite Book</title>
</book>
<book>
<author>Jane Doe</author>
<title>My Second Favorite Book</title>
</book>
</bookshelf>
应该变成:
<?xml version="1.0" ?><bookshelf><book><author>John Doe</author><title>My Favorite Book</title></book><book><author>Jane Doe</author><title>My Second Favorite Book</title></book></bookshelf>
大多数情况下,我只是想把我的XML文档的大小保持在最低限度,因为它的大小通常是兆字节,而且人类的可读性不是我的主要关注点,因为这个文档是由生成和处理的一台机器。
我知道我可以解析文档中的每个节点,测试其节点类型,如果它是TEXT_NODE
(类型3),remove()
。然而,考虑到文档中的节点数量,我的应用程序的性能会受到这种方法的影响。我正在寻找任何可以通过其节点类型创建所有元素数组的替代方法。或任何其他想法。
谢谢!