XML文档的简易增删查改
dom4j解析
一、利用dom4j操作元素節點
1.查詢第一本書的書名,并輸出到控制臺
2.給第一本書添加一個特價節點, 并修改第一本書的售價節點的內容為19.8元
3.刪除第二本書的作者節點
二、利用dom4j操作屬性節點
1.給第一本書添加一個屬性,如:出版社="清華大學出版社"
2.在控制臺上打印輸出第一本書的出版社屬性的值, 并更新屬性的值為“人民出版社”
3.刪除第一本書的出版社屬性
-------------------------------------------
<?xml version="1.0" encoding="utf-8" ?>
<書架>
<書>
<書名>數據結構</書名>
<作者>嚴蔚敏</作者>
<售價>29.00元</售價>
</書>
<書>
<書名>高等數學</書名>
<作者>同濟大學數學系</作者>
<售價>55.00元</售價>
</書>
</書架>
-------------------------------------------
代碼實現如下:
import java.io.FileWriter;
import java.util.Iterator;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class DomTest {
/*
* 一、利用dom4j操作元素節點
1.查詢第一本書的書名,并輸出到控制臺
2.給第一本書添加一個特價節點, 并修改第一本書的售價節點的內容為19.8元
3.刪除第二本書的作者節點
二、利用dom4j操作屬性節點
1.給第一本書添加一個屬性,如:出版社="清華大學出版社"
2.在控制臺上打印輸出第一本書的出版社屬性的值, 并更新屬性的值為“人民出版社”
3.刪除第一本書的出版社屬性
*/
@SuppressWarnings("deprecation")
public static void main(String[] args) throws Exception {
//創建一個輸入流,使xml文件成為一個document,先建立一個對象reader,然后
//用這個對象去調用方法
SAXReader reader = new SAXReader();
//讀取xml文件
Document doc = reader.read("src/1.xml");
//查詢第一本書的名字,并輸出到控制臺
//先獲取根目錄
Element root =doc.getRootElement();
//迭代獲取下面的元素(子目錄)
Iterator it1 = root.elementIterator("書");
//獲取二級子目錄
Element e1 = (Element) it1.next();
Iterator it2 = e1.elementIterator("書名");
Element e2 = (Element) it2.next();
System.out.println(e2.getName() "---" e2.getText());
//以上內容完成了查的工作
//2.給第一本書添加一個特價節點, 并修改第一本書的售價節點的內容為19.8元
//創建一個書下面的新的節點為“特價”
Element e3 = e1.addElement("特價");
Iterator it4 = e1.elementIterator("售價");
Element e6 =(Element) it4.next();
e6.setText("19.8元");
//3.刪除第二本書的作者節點
Element e4 = (Element) it1.next();
Iterator it3 = e4.elementIterator("作者");
Element e5 = (Element) it3.next();
boolean b = e4.remove(e5);
System.out.println(b);
//給第一本書添加一個屬性,如:出版社="清華大學出版社"
//設置后返回的是該元素,也就是e7和e1是同一個
Element e7 = e1.addAttribute("出版社", "清華大學出版社");
//在控制臺上打印輸出第一本書的出版社屬性的值, 并更新屬性的值為“人民出版社”
Attribute a = e1.attribute("出版社");
System.out.println(a.getValue());
a.setValue("人民 出版社");
System.out.println(a.getValue());
//刪除第一本書的出版社屬性
e1.remove(a);
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("GBK");
XMLWriter writer = new XMLWriter(new FileWriter("src/2.xml"),format);
writer.write(doc);
writer.close();
}
}
更多專業前端知識,請上 【猿2048】www.mk2048.com
總結
以上是生活随笔為你收集整理的XML文档的简易增删查改的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JS中ptototype和__proto
- 下一篇: 手机端input[type=date]的