java saxreader 字符串_解析XML文件(字符串)的两种方法-----SAXReader 与 DocumentHelper...
时间: 2024-03-08 14:51:00 浏览: 146
解析XML文件有多种方式,其中两种常用的方法是使用SAXReader和DocumentHelper。下面分别介绍一下这两种方法的使用。
使用SAXReader解析XML字符串:
1.首先导入相关的包和类:
```java
import java.io.StringReader;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
```
2.将XML字符串转换为输入流,并将输入流传给SAXReader对象:
```java
String xmlString = "<root><person><name>John</name></person></root>";
SAXReader reader = new SAXReader();
Document document = reader.read(new StringReader(xmlString));
```
3.获取根节点并遍历子节点:
```java
Element root = document.getRootElement();
List<Element> personList = root.elements("person");
for (Element person : personList) {
String name = person.elementText("name");
System.out.println(name);
}
```
使用DocumentHelper解析XML字符串:
1.首先导入相关的包和类:
```java
import java.util.List;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.DocumentHelper;
```
2.使用DocumentHelper将XML字符串转换为Document对象:
```java
String xmlString = "<root><person><name>John</name></person></root>";
Document document = DocumentHelper.parseText(xmlString);
```
3.获取根节点并遍历子节点:
```java
Element root = document.getRootElement();
List<Node> personList = root.selectNodes("person");
for (Node person : personList) {
String name = ((Element) person).elementText("name");
System.out.println(name);
}
```
以上就是使用SAXReader和DocumentHelper解析XML字符串的方法。需要注意的是,这里使用了dom4j库进行XML解析,因此需要先导入dom4j的相关包。
阅读全文