SAX解析DOM4J的方法總結

2022-05-08 23:06:11 字數 4313 閱讀 1937

《二 、利用sax進行dom解析dom4j的基本練習》

一、 本次總結用到的xml文件

<?xml version="1.0" encoding="utf-8"?>

《書架》

《書 出版社="人民出版社">

《書名》三國演義secodbook =root.elements("書");//得到根元素的子元素

element book = secodbook.get(1);//得到第二本書

4、找到第二本書的作者

element author = book.element("作者");

5、拿到內容輸出內容

system.out.println("請輸出得到的內容"+author.gettext());

assert.assertequals("吳承恩",author.gettext());//junit測試中獲取到的值和自己預期的值是否相等

三、sax解析:遍歷xml文件中所有的元素節點

1、得到document物件

saxreader reader = new saxreader();

document document = reader.read("src/book.xml');

2、得到根元素

element root = document.getrootelement();

treeworker(root);//使用treeworker方法,遍歷元素進行,列印他們的名字

3、建立treeworker()方法

private void treeworker(root)

}四、sax解析:修改某個元素節點的主題內容:例如:修改第二本書的售價

1、得到document物件

saxreader reader = new saxreader();

document document = reader.read("src/book.xml");

2、得到根元素

element root = document.getrootelement();

3、得到第二本書的售價

listbook = root.elements("書");

element secondbook =  book.get(1);//獲取第二本書

element secondbookprice = secondbook.element("售價");//獲取到第二本書的售價

//設定文字內容

secondbookprice。settext("666666");

//寫回到xml文件中

outputstream out = new fileoutputstream();

outputformat format = outputformat.createrprettyprint();

format.setencoding("utf-8");//設定編碼格式

xmlwriter writer = new xmlwirter(out,format);

writer.write(docuemnt);//寫回到xml文件中

writer.close();//關閉輸出流

五、sax解析:向指定元素節點中增加子元素節點:給第一本書新增批發價

1、得到document物件

saxreader reader = new saxreader();

document document = reader.read("src/book.xml");

2、得到根元素

element root = document.getrootelement();

3、得到第一本書

element firstbook = root.element("書");

//新增標籤及其文字內容

firstbook.addelement("批發價").settext("333");

4、寫回到xml文件中

outputstream out = new fileoutputstream();

outputformat format = outputformat.createrprettyprint();

format.setencoding("utf-8");//設定編碼格式

xmlwriter writer = new xmlwirter(out,format);

writer.write(docuemnt);//寫回到xml文件中

writer.close();//關閉輸出流

六、sax解析:向指定元素節點增加同級元素節點:在第一本書售價的前面新增內部價

1、得到document物件

saxreader reader = new saxreader();

document document = reader.read("src/book.xml");

2、得到根元素

element root = document.getrootelement();

3、得到第一本書

element firstbook = root.element("書");

listchildren = firstbook.elements();//得到第一本書的所有子元素節點:list

//借助documenthelper建立內部元素價

element price= documenthelper.createelement("內部價");

price.settext("99");

4、寫回到xml文件中

outputstream out = new fileoutputstream();

outputformat format = outputformat.createrprettyprint();

format.setencoding("utf-8");//設定編碼格式

xmlwriter writer = new xmlwirter(out,format);

writer.write(docuemnt);//寫回到xml文件中

writer.close();//關閉輸出流

七、sax解析:刪除指定元素節點:刪除第一本書的批發價

1、得到document物件

saxreader reader = new saxreader();

document document = reader.read("src/book.xml");

2、得到根元素

element root = document.getrootelement();

3、得到第一本書

element firstbook = root.element("書");

element price= firstbook.element("批發價");//使用上層的父元素進行刪除

firstbook.remove(price);

4、寫回到xml文件中

outputstream out = new fileoutputstream();

outputformat format = outputformat.createrprettyprint();

format.setencoding("utf-8");//設定編碼格式

xmlwriter writer = new xmlwirter(out,format);

writer.write(docuemnt);//寫回到xml文件中

writer.close();//關閉輸出流

八、、sax解析:操作xml檔案屬性:第一本書新增出版社屬性

1、得到document物件

saxreader reader = new saxreader();

document document = reader.read("src/book.xml");

2、得到根元素

element root = document.getrootelement();

3、得到第一本書

element firstbook = root.element("書");

firstbook.setattribute("出版社","人民出版社");

4、寫回到xml文件中

outputstream out = new fileoutputstream();

outputformat format = outputformat.createrprettyprint();

format.setencoding("utf-8");//設定編碼格式

xmlwriter writer = new xmlwirter(out,format);

writer.write(docuemnt);//寫回到xml文件中

writer.close();//關閉輸出流

Dom4J解析技術

前面的話 本文主要講解有關dom4j技術和xpath配合下的優化 目錄 為什麼需要dom4j dom4j怎麼用 xpath怎麼配合dom4j 一 為什麼需要dom4j 一門技術出現必定是有原因的,一來是解決某方面技術問題,再者可能是優化效能。xmldom 簡單方便,可以將xml文件以 dom樹 的形...

Dom4j解析XML應用總結

一.最常用到的api 1.getrootelement 隸屬於document類,返回xml文件的根元素 setrootelement element rootelement 設定給定元素為相應文件的根元素 2.asxml 隸屬於node類,用於將xml轉換為string 3.documenthel...

dom4j使用總結

1.載入xml 從檔案載入 saxreader reader new saxreader string filepath xmlfile filename xml document document null try catch documentexception e return document...