DOM4J jar包 獲取xml檔案中的標籤內容

2021-08-09 08:28:51 字數 2955 閱讀 5501

// 1.匯入dom4j jar包

// 建立解析器物件

saxreader reader = new saxreader();

document doc = reader.read(new fileinputstream("students.xml"));

// 獲取根標籤物件

element rootelement = doc.getrootelement();

// 獲取根標籤下的子標籤 預設獲取的是第乙個子標籤

element stuelement = rootelement.element("student");

system.out.println(stuelement.getname());

system.out.println("-------------以下是獲取所有子標籤---------------------");

// 獲取所有的子標籤

listeles = rootelement.elements();

for (element ele : eles)

// 方式三 獲取所有子標籤

system.out.println("-------------通過迭代器獲取所有子標籤---------------------");

iteratorelementiterator = rootelement.elementiterator();

while (elementiterator.hasnext())

system.out.println("-------------以下是獲取屬性物件--------------------------");

element element = rootelement.element("student");

attribute attribute = element.attribute("id");

string value = attribute.getvalue();

string name = attribute.getname();

system.out.println(name);

system.out.println(value);

// 方式2:直接獲取屬性值

system.out.println("------------------------------------------");

string value2 = rootelement.element("student").attributevalue("id");

system.out.println(value2);

// 方式三:獲取所有的屬性物件

listattributes = rootelement.element("student").attributes();

for (attribute atr : attributes)

system.out.println("---------------通過迭代器獲取所有的屬性物件--------------------------");

iteratorattributeiterator = rootelement.element("student").attributeiterator();

while(attributeiterator.hasnext())

system.out.println("--------------獲取標籤之間的文字-----------------------");

//層層往下拿

string text = doc.getrootelement().element("student").element("name").gettext();

system.out.println(text);

//方式2:

string text2 = doc.getrootelement().element("student").elementtext("name");

system.out.println(text2);

// 抽取方法獲取所有的節點

// getnodes(rootelement);

// 獲取節點物件

// node node = doc.node(0);//只能獲取乙個子節點

// system.out.println(node.getname());

// 獲取所有的節點

// iteratoriterator = doc.nodeiterator();

// while (iterator.hasnext())

}private static void getnodes(element ele) }}

/*獲取節點物件:1.node() 獲取單個節點物件  2.nodeiterator(); 獲取多個節點物件 只能獲取子節點

*             2.獲取根標籤物件 getrootelement()

*             3.element();獲取第乙個子標籤  elements() 獲取所有的子標籤

*                 elememtesiterator() 獲取所有子標籤物件

*             4.attribute() 獲取單個屬性物件  getname()獲取屬性的鍵  getvalue()獲取屬性的值

*                 attributes()獲取所有的屬性物件

*                 attributeiterator() 獲取所有的屬性物件

*                 直接獲取屬性物件的值 attributevalue()

*             5.先獲取到文字所在的標籤物件 通過gettext()拿出這個標籤直接的文字

*                 elementtext("name");

* *

* *

* *

* *

* *

*/

使用dom4j獲取xml檔案

在idea中匯入對應jar包 成功匯入會有箭頭標誌 要獲取的xml檔案 建立相應類 public class books public books string sn,string name,double price,string author public string getsn public ...

利用dom4j生成帶dom的xml檔案

直接利用dom4j生成的xml是不帶dom頭的,但需要應用中需要帶dom頭的xml檔案,比如fusionchart在載入xml資料檔案時 要求資料檔案為帶dom頭的xml,下面 示例如何生成帶dom頭的xml。public static document createdom mapdata retu...

基於dom4j獲取 設定xml檔案屬性值

獲取document物件 param filename xml位置 return string 值 throws exception publicdocument getxmldocument string filename catch documentexception e returndocum...