在学采用JDOM解析XML文档时,如何把XML文档中的内容全部解析出来,这个问题可把我难住了。不过经过多番查看JDOM API后,终于把它给搞定了。呼呼。。经过这么一弄,算是基本掌握JDOM了。
其中XML文档为:company.xml
<?xml version="1.0" encoding="UTF-8"?> <联系人列表 公司="大禹"> <联系人> <!-- 我是注释,看不见我 --> <姓名>大牛</姓名> <公司>大禹集团</公司> <电话>180888888</电话> <地址> <街道>皇后街</街道> <城市>上海</城市> <省份>上海</省份> </地址> </联系人> <联系人> <姓名>二牛</姓名> <公司>大禹集团</公司> <电话>188888888</电话> <地址> <街道>皇后大道</街道> <城市>上海</城市> <省份>上海</省份> </地址> </联系人> </联系人列表>
解析它的java代码如下:ParseTest.java
import java.io.File; import java.io.IOException; import java.util.List; import org.jdom.Attribute; import org.jdom.Comment; import org.jdom.Document; import org.jdom.Element; import org.jdom.JDOMException; import org.jdom.Text; import org.jdom.input.SAXBuilder; // 练习 解析指定的XML文档,打印到控制台上 public class ParseTest { public static void main(String[] args) throws JDOMException, IOException { SAXBuilder builder = new SAXBuilder(); Document doc = builder.build(new File("company.xml")); Element root = doc.getRootElement(); parse(root); } private static void parse(Element root) { String rootName = root.getName(); System.out.print("<" + rootName); // 把当前元素里的属性先打印出来 List listAtt = root.getAttributes(); for (int i = 0; i < listAtt.size(); i++) { Attribute att = (Attribute) listAtt.get(i); String sname = att.getName(); String svalue = att.getValue(); System.out.print(" " + sname + "=\"" + svalue + "\""); } System.out.print(">"); List listContent = root.getContent(); for (int i = 0; i < listContent.size(); i++) { Object obj = listContent.get(i); // 利用instanceof关键字来判断获得的内容的具体类型 if (obj instanceof Text) { Text t = (Text) obj; System.out.print(t.getText()); // 递归出口 } else if (obj instanceof Element) { Element e = (Element) obj; parse(e); // 如果是Element,则递归 } else if (obj instanceof Comment) { Comment c = (Comment) obj; System.out.print("<!--" + c.getText() + ">"); } } System.out.print("</" + rootName + ">"); } }
这里instanceof关键字,可是帮了我大忙,没有它的话,都不知道怎么去判断从getContent()方法中得来的对象。。
相关推荐
解析完XML文件后,我们可以使用XPath来查询XML文档。XPath是一种在XML文档中查找信息的语言,JDOM提供了Jaxen库来支持XPath。例如,以下代码演示了如何找到文档中的特定元素: ```java import org.jdom2.xpath....
本篇文章将深入探讨如何利用JDOM解析XML文件,并基于XML中的类名生成相应的对象。 首先,我们需要理解JDOM的基本概念。JDOM提供了一组Java对象来表示XML文档,包括Element(元素)、Attribute(属性)、Text(文本...
JDOM是Java中一个用于处理XML文档的库,它提供了一种高效且方便的方式来创建、读取、修改XML文件。本篇文章将深入探讨如何使用JDOM来读取XML文件。 首先,我们需要了解JDOM的基本概念。JDOM通过构建一棵DOM...
Java中的JDOM库是用于解析XML文档的一种强大的工具。它提供了简单、高效的API来读取、修改和创建XML文件。本篇文章将深入探讨如何利用JDOM解析XML文件,以及在这个过程中涉及的关键知识点。 首先,我们需要了解XML...
### 利用JDOM实现XML文档和数据库之间的数据交换 #### 概述 JDOM(Java Document Object Model)是一个开放源代码的纯Java API,用于分析、构建、处理和序列化XML文档。作为一种轻量级的DOM实现,JDOM特别适合在...
JDOM是Java中一个专门用来解析XML的库,它提供了方便的API来读取、修改和创建XML文档。在这个例子中,我们将深入探讨如何使用JDOM解析XML文件,并进行遍历与构建。 首先,我们需要了解JDOM的基本概念。JDOM主要由三...
JDOM,全称为Java Document Object Model,是一种专为Java设计的XML处理API,它提供了对XML文档结构的完整映射,使得我们可以方便地创建、读取和修改XML文件。下面将详细介绍如何使用JDOM来读取XML文件。 首先,...
在Java中,JDOM(Java Document Object Model)是一个流行的选择来解析和操作XML文档。它提供了一个纯Java的API,使开发者能够高效地读取、创建和修改XML内容。 ### JDOM基本概念 1. **Document对象**:JDOM的核心...
本文详细介绍了如何使用 JDOM 库创建 XML 文档,以及如何进行基本的 XML 文件解析。通过这些基础操作,您可以轻松地使用 Java 来管理和操作 XML 数据。JDOM 的简洁性和易用性使其成为处理 XML 数据的理想选择之一。
* XML 配置文件解析 * 数据交换和 Integration * 文档管理和存储 JDOM 库是一个功能强大且灵活的 XML 解析库,能够满足各种 Java 项目的需求。 结语 本文详细介绍了如何使用 JDOM 库解析 XML 文件,并讨论了 JDOM...
Java JDOM解析XML是Java开发中处理XML文档的一种方法,JDOM全称为Java Document Object Model,它是一个基于Java语言的API,用于创建、修改和读取XML文档。JDOM为XML处理提供了一种高效且方便的解决方案,尤其适用于...
XML(可扩展标记语言)是一种用于存储和传输数据的标准格式,尤其在软件开发和Web服务中广泛应用。JDOM是Java中专门用来...通过这个实例,你可以更好地理解如何利用JDOM在Java中处理XML文档,从而为你的项目带来便利。
解析XML文档通常涉及读取文件并将其转换为JDOM对象。以下是一个基本示例: ```java import org.jdom2.Document; import org.jdom2.input.SAXBuilder; public class XmlDocumentParser { public Document parseXml...
除了解析文件之外,JDOM还支持将字符串解析为XML文档。这对于处理动态生成的XML数据非常有用。 #### 2. 将字符串解析为XML 下面是一个示例代码,展示了如何将一个XML字符串转换为JDOM的`Document`对象: ```java ...
JDOM是Java领域中一个专门用来解析XML的库,它提供了一种高效且易于使用的API来处理XML文档。在这个小实例中,我们将深入探讨如何使用JDOM解析XML文件。 首先,我们需要引入JDOM的依赖。在Java项目中,如果你使用的...
通过JDOM,开发者可以使用Java API来处理XML文档,无需了解底层的SAX或DOM解析器的工作原理。 **JDOM的基本元素** - **Document**: XML文档的根节点,代表整个XML文档。 - **Element**: 表示XML文档中的元素,它是...
### JDOM解析XML文档 #### 一、JDOM概述与特点 JDOM(Java Document Object Model)是一款专为Java优化的开源XML数据处理库。它虽然与W3C的DOM标准相似,但作为DOM的一种替代方案,JDOM并不是基于DOM构建的,也...
XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件、文档存储等领域。在Java中,有许多库可以...通过熟练掌握JDOM,你可以轻松地解析、创建和修改XML文档,从而提高开发效率。
JDOM,全称Java Document Object Model,是专门为Java设计的一个解析XML的API,它提供了方便的构建和操作XML文档的方法。 JDOM的优势在于它完全基于Java,因此可以充分利用Java的强大功能,如异常处理、内存管理等...
对于含有子节点的复杂的XML文件,可以采用jdom.jar来解析。 上传的文件包括程序,XML文件,jdom包,jdbc包 对于复杂的XML文件,可以采用层层解析,虽然方法不是很简便,但是,可以完成解析的任务,而且,准确率很高...