这个问题已经在这里有了答案:




9年前关闭。






什么是xml规范化?我在javadoc中发现以下内容,但我听不懂吗?有人可以帮助吗?

public void normalize()

将所有Text节点(包括属性节点)置于该Node下方子树的整个深度中,并放入“常规”形式,其中仅结构(例如元素,注释,处理指令,CDATA部分和实体引用)分隔Text节点,即,没有相邻的Text节点,也没有空的Text节点。这可以用来确保文档的DOM View 与保存和重新加载文档的DOM View 相同,并且在依赖于特定文档树结构的操作(例如XPointer [XPointer]查找)用于使用。如果附加到Node.ownerDocument的DOMConfiguration对象的参数“normalize-characters”为true,则此方法还将完全规范化Text节点的字符。
注意:在文档包含CDATASections的情况下,仅规范化操作可能还不够,因为XPointer不会区分Text节点和CDATASection节点。
自从:
DOM级别3

最佳答案

解析器通常会返回“令人吃惊的”文本节点,其中文本被拆分为多个节点,或者较少见的是空文本节点。这是它们被精简以实现最佳性能的副作用。当存在可忽略的空格,缓冲区边界或解析器方便使用的其他任何地方时,可能会发生这种情况。
normalize()将消除所有这些意外情况,合并相邻的文本节点并删除空文本节点。

关于java - 什么是xml规范化?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6694455/

10-14 12:26