其次DOM4J的解释
一.Document对象相关
1.读取XML文件,获得document对象.
Java代码
SAXReader reader = new SAXReader();
Document document = reader.read(new File("input.xml"));
SAXReader reader = new SAXReader();
Document document = reader.read(new File("input.xml")); 2.解析XML形式的文本,得到document对象.
Java代码
String text = "<members></members>";
Document document = DocumentHelper.parseText(text);
String text = "<members></members>";
Document document = DocumentHelper.parseText(text);3.主动创建document对象.
Java代码
Document document = DocumentHelper.createDocument();
Element root = document.addElement("members");// 创建根节点
Document document = DocumentHelper.createDocument();
Element root = document.addElement("members");// 创建根节点
二.节点相关
1.获取文档的根节点.
Java代码
Element rootElm = document.getRootElement();
Element rootElm = document.getRootElement();2.取得某节点的单个子节点.
Java代码
Element memberElm=root.element("member");// "member"是节点名
Element memberElm=root.element("member");// "member"是节点名 3.取得节点的文字
Java代码
String text=memberElm.getText();
String text=memberElm.getText(); 也可以用:
Java代码
String text=root.elementText("name");
String text=root.elementText("name"); 这个是取得根节点下的name字节点的文字.
4.取得某节点下名为"member"的所有字节点并进行遍历.
Java代码
List nodes = rootElm.elements("member");
for (Iterator it = nodes.iterator(); it.hasNext();) {
Element elm = (Element) it.next();
// do something
}
List nodes = rootElm.elements("member");
for (Iterator it = nodes.iterator(); it.hasNext();) {
Element elm = (Element) it.next();
// do something
}5.对某节点下的所有子节点进行遍历.
Java代码
for(Iterator it=root.elementIterator();it.hasNext();){
Element element = (Element) it.next();
// do something
}
for(Iterator it=root.elementIterator();it.hasNext();){
Element element = (Element) it.next();
// do something
}6.在某节点下添加子节点.
Java代码
Element ageElm = newMemberElm.addElement("age");
Element ageElm = newMemberElm.addElement("age");7.设置节点文字.
Java代码
ageElm.setText("29");
ageElm.setText("29");8.删除某节点.
Java代码
parentElm.remove(childElm);// childElm是待删除的节点,parentElm是其父节点
parentElm.remove(childElm);// childElm是待删除的节点,parentElm是其父节点 9.添加一个CDATA节点.
Java代码
Element contentElm = infoElm.addElement("content");
contentElm.addCDATA(diary.getContent());
contentElm.getText(); // 特别说明:获取节点的CDATA值与获取节点的值是一个方法
contentElm.clearContent(); //清除节点中的内容,CDATA亦可
Element contentElm = infoElm.addElement("content");
contentElm.addCDATA(diary.getContent());
contentElm.getText(); // 特别说明:获取节点的CDATA值与获取节点的值是一个方法
contentElm.clearContent(); //清除节点中的内容,CDATA亦可
三.属性相关.
1.取得某节点下的某属性
Java代码
Element root=document.getRootElement();
Attribute attribute=root.attribute("size");// 属性名name
Element root=document.getRootElement();
Attribute attribute=root.attribute("size");// 属性名name2.取得属性的文字
Java代码
String text=attribute.getText();
String text=attribute.getText(); 也可以用:
Java代码
String text2=root.element("name").attributeValue("firstname");
String text2=root.element("name").attributeValue("firstname"); 这个是取得根节点下name字节点的属性firstname的值.
3.遍历某节点的所有属性
Java代码
Element root=document.getRootElement();
for(Iterator it=root.attributeIterator();it.hasNext();){
Attribute attribute = (Attribute) it.next();
String text=attribute.getText();
System.out.println(text);
}
Element root=document.getRootElement();
for(Iterator it=root.attributeIterator();it.hasNext();){
Attribute attribute = (Attribute) it.next();
String text=attribute.getText();
System.out.println(text);
}4.设置某节点的属性和文字.
Java代码
newMemberElm.addAttribute("name", "sitinspring");
newMemberElm.addAttribute("name", "sitinspring");5.设置属性的文字
Java代码
Attribute attribute=root.attribute("name");
attribute.setText("sitinspring");
Attribute attribute=root.attribute("name");
attribute.setText("sitinspring");6.删除某属性
Java代码
Attribute attribute=root.attribute("size");// 属性名name
root.remove(attribute);
Attribute attribute=root.attribute("size");// 属性名name
root.remove(attribute);
四.将文档写入XML文件.
1.文档中全为英文,不设置编码,直接写入的形式.
Java代码
XMLWriter writer = new XMLWriter(new FileWriter("output.xml"));
writer.write(document);
writer.close();
XMLWriter writer = new XMLWriter(new FileWriter("output.xml"));
writer.write(document);
writer.close();2.文档中含有中文,设置编码格式写入的形式.
Java代码
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("GBK"); // 指定XML编码
XMLWriter writer = new XMLWriter(new FileWriter("output.xml"),format);
writer.write(document);
writer.close();
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("GBK"); // 指定XML编码
XMLWriter writer = new XMLWriter(new FileWriter("output.xml"),format);
writer.write(document);
writer.close();
五.字符串与XML的转换
1.将字符串转化为XML
Java代码
String text = "<members> <member>sitinspring</member> </members>";
Document document = DocumentHelper.parseText(text);
String text = "<members> <member>sitinspring</member> </members>";
Document document = DocumentHelper.parseText(text);2.将文档或节点的XML转化为字符串.
Java代码
SAXReader reader = new SAXReader();
Document document = reader.read(new File("input.xml"));
Element root=document.getRootElement();
String docXmlText=document.asXML();
String rootXmlText=root.asXML();
Element memberElm=root.element("member");
String memberXmlText=memberElm.asXML();
分享到:
相关推荐
### Dom4J生成XML的完整方法详解 在Java开发领域,处理XML文档是常见的需求之一。Dom4J作为一款优秀的Java XML API,以其简洁、高效的特点,在生成、解析和操作XML文档方面表现突出。本文将深入探讨如何使用Dom4J库...
- **Web服务**: 在SOAP等协议中,XML是常用的数据传输格式,DOM4J能够帮助构建和解析这些XML消息。 - **文档生成**: 当需要根据业务逻辑动态生成XML文档时,DOM4J的创建功能十分有用。 #### 四、结语 DOM4J作为一...
本文将详细介绍使用dom4j读取XML文件的四种常见方法,并通过示例代码帮助读者更好地理解和掌握这些技术。 #### 方法一:使用`SAXReader`与`elementIterator` **方法原理**: 此方法首先利用`SAXReader`读取XML文档...
- **DOM4J中常用的XPath方法**: - `selectNodes(String xpathExpression)`:根据XPath表达式选取一系列节点。 - `selectSingleNode(String xpathExpression)`:根据XPath表达式选取单个节点。 - `valueOf(String...
本文将深入探讨如何使用DOM4J库来读取XML文件。 首先,让我们理解DOM4J的基本概念。DOM4J是基于DOM模型的,DOM(Document Object Model)是一种标准的API,用于解析XML文档并将其表示为一棵由节点组成的树形结构。...
通过学习和实践这些基本操作,你可以熟练掌握DOM4J解析XML的技巧,为你的Java项目中处理XML数据提供强大的支持。在项目中遇到具体问题时,可以参考DOM4J的官方文档,或利用在线资源进行更深入的学习。
Java DOM4J解析XML是一种常见的处理XML文档的技术,它提供了灵活且高效的API,使得开发者能够方便地读取、写入、修改以及操作XML文件。DOM4J是Java中一个非常强大的XML处理库,它结合了DOM、SAX和JDOM的优点,同时也...
### Java使用DOM4J读取XML知识点解析 #### 一、概述 在Java开发中,处理XML文件是一项常见的任务。DOM4J是一个简单且功能强大的Java库,用于处理XML文档。它提供了类似于DOM的API,但更为轻量级且易于使用。本篇将...
首先,dom4j是一个强大的Java XML API,它提供了丰富的功能,如读取、写入、修改和操作XML文档。其核心概念是Element(元素)、Attribute(属性)和Document(文档)。通过这些对象,我们可以方便地处理XML文档的...
在Java世界中,XML是一种常见的数据交换格式,DOM4J作为XML处理工具,尤其适用于那些需要频繁进行XML操作的项目。 在“dom4j读写xml!例子比较简单”的描述中,我们可以推断出这个压缩包包含了一些关于如何使用DOM4J...
1. **解析XML文档**:DOM4J提供了解析XML文档的方法,如`Document document = DocumentHelper.parseText(xmlString)`或`SAXReader reader = new SAXReader(); Document document = reader.read(new File("path_to_...
DOM4J是Java中解析XML的常用库之一,其名称中的“DOM”指的是Document Object Model,这是一个W3C标准,用于表示XML文档的树型结构。DOM4J不仅支持DOM,还提供了SAX(Simple API for XML)和StAX(Streaming API for...
"以及解析xml文档所用的pdf文档说明"则表明还有一个PDF文档,可能详细介绍了如何使用dom4j来解析XML文件,包括各种方法、类和接口的使用示例。 **dom4j解析XML文档知识点:** 1. **dom4j简介**:dom4j是一个开放...
在解析XML文档后,DOM4J将XML转换为一个对象树,这个树结构与DOM类似但更易于操作。DOM4J的Element类代表XML元素,它提供了丰富的API,例如`elements()`方法,可以轻松获取元素的所有子元素,而不仅仅是子节点,这样...
在Java开发中,dom4j和jaxen是两个常用的库,用于解析和操作XML文档。 **dom4j** 是一个非常灵活且功能强大的Java XML API,它提供了全面的XML解决方案,包括XML的读取、写入、修改以及XPath查询等功能。dom4j的...
在Java领域,XML是数据交换和配置文件的常用格式,DOM4J则是一个重要的工具,帮助开发者高效地与XML交互。 XML(eXtensible Markup Language)是一种标记语言,它定义了如何存储和传输结构化数据。其特点是自描述性...
解析XML文件有多种方法,常见的有DOM(文档对象模型),DOM4J以及SAX(简单API文档解析)。DOM方法将整个XML文档加载进内存,形成一个树状结构,然后通过遍历这个结构进行操作,这种方式适合文档较小且需要频繁操作...
本文详细介绍了如何使用DOM4J进行XML文档的创建、写入以及读取操作。通过对DOM4J库的学习和实践,可以高效地处理各种复杂的XML文档需求。无论是创建新的XML文件还是从现有的XML文件中提取数据,DOM4J都能提供强大的...
DOM4J是一个非常流行的Java XML API,它提供了丰富的功能,包括读取、写入、修改以及操作XML文档。在XML处理中,格式化是一个重要的环节,它可以使得XML代码更加整洁、易读,便于理解和维护。 【描述】虽然描述部分...