这是我在作业中需要处理的 xml 文件。
<?xml-stylesheet type="text/xsl" href="people.xsl"?>
<People>
<Person>
`...`
</Person>
`...`
</People>
我正在使用“javax.xml.parsers.DocumentBuilderFactory”来创建一个dom解析器。解析后,生成的文档在根中没有 People,但某些根具有 xml-stylesheet 和 People 子级。
看来这是可以避免的。
最佳答案
<?xml-stylesheet ... ?>
不是 XML 声明。它是一个处理指令 (PI),DOM 规范规定文档节点可以包含零个或多个处理指令。
一种方法是对应用程序进行编码,以适本地处理(例如忽略)文档节点中的 PI。或者,只需使用文档节点的 documentElement
attribute/getter 直接获取根元素。
关于java - 使用java dom解析器进行XML解析将xml声明转换为元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1727556/