一尘不染

使用Java在DOM解析中进行规范化-它是如何工作的?

java

我在DOM解析器的代码中看到以下行。

doc.getDocumentElement().normalize();

我们为什么要进行这种归一化?
我阅读了文档,但我听不懂一个字。

将所有Text节点置于此节点下子树的完整深度

好吧,那么有人可以告诉我(最好是附照片)这棵树是什么样的吗?

谁能解释我为什么需要规范化?
如果我们不规范会怎样?


阅读 425

收藏
2020-02-28

共1个答案

一尘不染

句子的其余部分是:

其中只有结构(例如元素,注释,处理指令,CDATA节和实体引用)将文本节点分开,即,既没有相邻的文本节点,也没有空的文本节点。

这基本上意味着以下XML元素

<foo>hello 
wor
ld</foo>

可以在非规范化节点中这样表示:

Element foo
    Text node: ""
    Text node: "Hello "
    Text node: "wor"
    Text node: "ld"

标准化后,该节点将如下所示

Element foo
    Text node: "Hello world"

对于属性:<foo bar="Hello world"/>,注释等也是如此。

2020-02-28