如何在解析XML文件时忽略空格。它总是再次调用characters(...)
方法,而在结束元素之后跟随'\n'
或'\r'
,因此它会调用此方法两次,而不是仅调用一次。
答案 0 :(得分:1)
针对DTD解析文档的SAXParser在遇到元素内容中的空格时调用ignorableWhitespace()
。例如,如果这个XML片段
<ol>
<li>one</li>
<li>two</li>
</ol>
针对此DTD片段解析:
<!ELEMENT ol (li+)>
<!ELEMENT li (#PCDATA)>
SAXParser会针对characters(...)
和"one"
调用"two"
,针对元素之间的所有空白区域调用ignorableWhitespace(...)
。
另请注意,这仅适用于针对DTD进行解析。使用模式时,不会调用ignorableWhitespace(...)
(即使可以获得相同类型的信息)。