Java DOM

时间:2020-01-09 10:36:30  来源:igfitidea点击:

用于XML解析的Java DOM API旨在将XML作为"文档对象模型(DOM)"在内存中的对象图来使用。解析器遍历XML文件并创建相应的DOM对象。这些DOM对象以树结构链接在一起。解析器完成后,就可以从中获得此DOM对象结构。然后,我们可以根据需要来回遍历DOM结构。

注意:本文使用SVG(可缩放矢量图形)图。如果我们使用的是Internet Explorer,则需要Adobe SVG插件显示这些图。 Firefox 3.0.5+用户和Google Chrome用户应该没有问题。

这是一个示例XML文件,以及一个DOM树,说明了将XML转换为DOM的原理:

<book>
    <title>Fun Software</title>
    <author>Hyman</author>
    <ISBN>0123456789</ISBN>
</book>

以及相应的DOM结构:

书名作者ISBN现在可以像遍历任何其他树对象图一样遍历此Java DOM结构。还记得他们大学的图形遍历算法吗?

创建一个Java DOM XML解析器

创建Java DOM XML解析器是通过使用javax.xml.parsers.DocumentBuilderFactory类来完成的。这是一个例子:

DocumentBuilderFactory builderFactory =
        DocumentBuilderFactory.newInstance();
DocumentBuilder builder = null;
try {
    builder = builderFactory.newDocumentBuilder();
} catch (ParserConfigurationException e) {
    e.printStackTrace();  
}

DOM解析器是" DocumentBuilder"实例。使用该DOM解析器,我们可以将XML文件解析为DOM对象,这将在下一部分中看到。

使用Java DOM解析器解析XML

使用DocumentBuilder将XML文件解析为DOM树是这样完成的:

try {
    Document document = builder.parse(
        new FileInputStream("data\text.xml"));
} catch (SAXException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
}

现在我们可以遍历从DocumentBuilder收到的Document实例。下文本介绍了如何遍历Document对象(请参见下面的链接)。