Java XMLStreamReader,当文本包含 START_ELEMENT 时如何获取元素文本

The*_*111 5 java xml parsing xml-parsing xmlstreamreader

如果我有一个 XML 元素,例如:

<title>this is a title</title>
Run Code Online (Sandbox Code Playgroud)

使用 XMLStreamReader 很容易获得文本。getElementText(). 但是,如果遇到这样的元素,我无法弄清楚如何获取文本:

<title>this is a <othertag>title with another</othertag> tag inside of it</title>
Run Code Online (Sandbox Code Playgroud)

我什至不确定那是否是有效的 XML,但它似乎通过了我试过的 W3C 验证器。根据API 文档getElementText()如果您要在START_ELEMENT内部遇到另一个事件,则不能使用来获取文本。那么...可以使用?

Ani*_*dha 3

使用获取文本

getText() 以字符串形式返回解析事件的当前值,这将返回 CHARACTERS 事件的字符串值,返回 COMMENT 的值,ENTITY_REFERENCE 的替换值,CDATA 部分的字符串值,字符串值对于 SPACE 事件,或 DTD 内部子集的字符串值。如果 ENTITY_REFERENCE 已解析,任何字符数据都将报告为 CHARACTERS 事件。