您好,登錄后才能下訂單哦!
import java.util.List;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
import org.junit.Test;
/**
* 解析xml
* @author WangShuang
*
*/
public class Demo {
/**
* 獲取xml標簽的文本內容和屬性值
* @param args
*/
@Test
public void run1() {
try {
//1.創建解析器對象
SAXReader sax = new SAXReader();
//2.解析xml文檔
Document document = sax.read("src/test.xml");
//3.獲得跟節點
Element root = document.getRootElement();
//4獲取學生節點
Element student = root.element("student");
//5獲取學生姓名節點
Element name = student.element("name");
System.out.println(name.getText());
//獲取學生屬性編號的值
Attribute attribute = name.attribute("id");
System.out.println(attribute.getValue());
} catch (DocumentException e) {
e.printStackTrace();
}
}
/**
* xpath獲取xml標簽的文本內容和屬性值
* @param args
*/
@Test
public void run2() {
try {
// 1. 先創建解析器對象
SAXReader sax = new SAXReader();
//2 .解析xml文檔
Document document = sax.read("src/test.xml");
// document是Node的子節點,能使用node節點對象的方法
Node node = document.selectSingleNode("http://name");
// 獲取學生姓名
System.out.println(node.getText());
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* xpath獲取xml標簽的文本內容和屬性值
* @param args
*/
@Test
public void run3() {
try {
SAXReader sax = new SAXReader();
Document document = sax.read("src/test.xml");
List<Node> selectNodes = document.selectNodes("http://name");
for (Node node : selectNodes) {
System.out.println(node.getText());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
需要導入的jar包
<?xml version="1.0" encoding="UTF-8"?>
<Person>
<student>
<name id="01">張三</name>
<sex>男</sex>
</student>
<!-- <student>
<name id="01">lili</name>
<sex>nv</sex>
</student> -->
</Person>
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。