欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java對xml節(jié)點屬性的增刪改查實現(xiàn)方法

 更新時間:2016年10月04日 19:56:10   投稿:jingxian  
下面小編就為大家?guī)硪黄猨ava對xml節(jié)點屬性的增刪改查實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

學習本文之前請先看我的另一篇文章JAVA對XML節(jié)點的操作可以對XML操作有更好的了解。

package vastsum;

import java.io.File;
import java.io.FileWriter;
import java.util.Iterator;

import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
import org.junit.Test;

/**
 * 使用dom4j操作xml
 * 對xml屬性操作
 * 時間:2016年10月2號
 * 操作xml文件為contact.xml
 * 本文件文件名為:attrDemo.java
 * @author shutu008
 *
 */
public class attrDemo{
 @Test
 public void exmple() throws Exception{
  //讀取XML文件,獲得document對象
  SAXReader reader = new SAXReader();
  Document document = reader.read(new File("./src/contact.xml"));
  
  //獲得某個節(jié)點的屬性對象
  Element rootElem = document.getRootElement();
  //獲取根節(jié)點屬性對象
  Attribute rootAttr = rootElem.attribute("id"); 
  
  //獲取指定節(jié)點屬性對象
  Element contactElem = rootElem.element("contact");
  Attribute contactAttr = contactElem.attribute("id");
  
  //遍歷某個節(jié)點的所有屬性
  for (Iterator it = contactElem.attributeIterator();it.hasNext();){
   Attribute conAttr= (Attribute)it.next();
   String conTxt = conAttr.getValue();
   String conAttrName = conAttr.getName();
   System.out.println(conAttrName+" = "+conTxt);
  }
  //設置某節(jié)點的屬性和值
  contactElem.addAttribute("name", "zhangsan");
  
  //設置(更改)某屬性的值
  Attribute nameAttr = contactElem.attribute("name");
  nameAttr.setValue("lisi");
  
  //刪除某節(jié)點的指定屬性
  contactElem.remove(nameAttr);
  //將某節(jié)點的屬性和值寫入xml文檔中
  XMLWriter writer = new XMLWriter(new FileWriter("./src/contact.xml"));
  writer.write(document);
  writer.close();
  
  /**
   * 如果文檔中有中文需要設置字符編碼
   * 用如下語句:
   * OutputFormat format = OutputFormat.createPrettyPrint();
   * format.setEncoding("GBK");
   * XMLWriter writer = new XMLWriter(new FileWriter("./src/contact.xml"),format);
   */
  //獲取指定對象的屬性名
  System.out.println(rootAttr.getName());
  System.out.println(contactAttr.getName());
  //獲取指定對象的屬性值
  System.out.println(contactAttr.getValue());
  System.out.println(rootAttr.getValue());
 }
}

備注:以上例子代碼可以直接運行??梢允褂肑unit 4調節(jié)本例子的代碼。

以下是XML文檔:

<?xml version="1.0" encoding="UTF-8"?>
<contactList id="0">
 <contact id="001" class="style">
  <name>張三</name>
  <age>20</age>
  <phone>134222223333</phone>
  <email>zhangsan@qq.com</email>
  <qq>432221111</qq>
 </contact>
 <contact id="002">
  <name>李四</name>
  <age>20</age>
  <phone>134222225555</phone>
  <email>lisi@qq.com</email>
  <qq>432222222</qq>
 </contact>
 <contactTwo>
  <name>王五</name>
  <age>32</age>
  <phone>465431341</phone>
  <emali>af@qq.com</emali>
  <qq>46164694</qq>
 </contactTwo>
 <test>測試</test>
 <test>其他用途</test>
</contactList>

文件目錄如圖所示:

以上就是小編為大家?guī)淼膉ava對xml節(jié)點屬性的增刪改查實現(xiàn)方法全部內容了,希望大家多多支持腳本之家~

相關文章

  • 出現(xiàn)次數超過一半(50%)的數

    出現(xiàn)次數超過一半(50%)的數

    給出n個數,需要我們找出出現(xiàn)次數超過一半的數,下面小編給大家分享下我的實現(xiàn)思路及關鍵代碼,感興趣的朋友一起學習吧
    2016-07-07
  • Java基于JavaMail實現(xiàn)向QQ郵箱發(fā)送郵件

    Java基于JavaMail實現(xiàn)向QQ郵箱發(fā)送郵件

    這篇文章主要為大家詳細介紹了Java基于JavaMail實現(xiàn)向QQ郵箱發(fā)送郵件的相關資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-01-01
  • Java分頁查詢的幾種實現(xiàn)方法舉例

    Java分頁查詢的幾種實現(xiàn)方法舉例

    這篇文章主要給大家介紹了關于Java分頁查詢的幾種實現(xiàn)方法,分頁是系統(tǒng)中常用到的功能,只要涉及到查詢必定伴隨而來的就是分頁,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • Spring中property-placeholder的使用與解析詳解

    Spring中property-placeholder的使用與解析詳解

    本篇文章主要介紹了Spring中property-placeholder的使用與解析詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • 使用JSONObject.toJSONString 過濾掉值為空的key

    使用JSONObject.toJSONString 過濾掉值為空的key

    這篇文章主要介紹了使用JSONObject.toJSONString 過濾掉值為空的key,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • mybatisPlus條件構造器常用方法小結

    mybatisPlus條件構造器常用方法小結

    這篇文章主要介紹了mybatisPlus條件構造器常用方法,首先是.select和其他條件,本文結合示例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • 詳解springboot中junit回滾

    詳解springboot中junit回滾

    本篇文章主要介紹了springboot中junit回滾,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 使用Spring?Boot進行單元測試詳情

    使用Spring?Boot進行單元測試詳情

    這篇文章主要介紹了使用Spring?Boot進行單元測試詳情,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Java棧的運用之中綴表達式求值詳解

    Java棧的運用之中綴表達式求值詳解

    本文來介紹一題中綴表達式求值的問題,就是給定一個中綴計算式,編寫程序將這個式子運算結果給計算出來,其實和后綴表達式的思路差不多,都是棧的運用問題,感興趣的可以了解一下
    2022-11-11
  • Java concurrency線程池之線程池原理(三)_動力節(jié)點Java學院整理

    Java concurrency線程池之線程池原理(三)_動力節(jié)點Java學院整理

    這篇文章主要為大家詳細介紹了Java concurrency線程池之線程池原理第三篇,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06

最新評論