麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 開發(fā) > Java > 正文

java使用DOM4J對(duì)XML文件進(jìn)行增刪改查操作

2024-07-14 08:43:17
字體:
供稿:網(wǎng)友

本文實(shí)例為大家分享了java使用DOM4J對(duì)XML文件進(jìn)行增刪改查操作的具體代碼,供大家參考,具體內(nèi)容如下

源代碼: 

DOM4j.java

 

package com.zc.homeWork19;import java.io.FileWriter;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import org.dom4j.Document;import org.dom4j.Element;import org.dom4j.io.SAXReader;import org.dom4j.io.XMLWriter;import com.zc.homeWork19.Book;public class DOM4j {  public static void main(String args[]) throws Exception {    /**     * 第一步,得到document對(duì)象。     */    Document document = getDocument();    /**     * 第二步,修改得到的document對(duì)象     */    /**     * 首先,讀取功能     */    List<Book> books = readAllElementsFromXMLDocument(document);    traverseBooks(books);    /**     * 其次,修改功能 修改內(nèi)容:將id為b002的元素的title改為Java Core,Price改為100.01     */    ModifyInformationOfXMLDocument(document);     /**     * 再者:實(shí)現(xiàn)刪除功能 刪除內(nèi)容:刪除掉id為book1的元素內(nèi)容。     */     deleteInformationOfXMLDocument(document);     /**     * 最后:實(shí)現(xiàn)添加i新元素功能 添加內(nèi)容:id為book3,title內(nèi)容為:鳳姐玉照,price內(nèi)容為10000.00     */     addNewBookToXMLDocument(document);     /**     * 第三步:將得到的document對(duì)象持久化保存到硬盤(XML)     */     writeToNewXMLDocument(document);  }  /**   * 實(shí)現(xiàn)了添加新節(jié)點(diǎn):book的功能   *    * @param document   */  private static void addNewBookToXMLDocument(Document document) {    Element root = document.getRootElement();    Element newBook = root.addElement("book");    newBook.addAttribute("id", "book3");    Element    title.setText("鳳姐玉照");    Element price = newBook.addElement("price");    price.setText("10000.01");  }  /**   * 該方法實(shí)現(xiàn)了使用dom4j的刪除元素的功能   *    * @param document   */  private static void deleteInformationOfXMLDocument(Document document) {    Element root = document.getRootElement();    for (Iterator it = root.elementIterator(); it.hasNext();) {      Element book = (Element) it.next();      String id = book.attributeValue("id");      if ("book1".equals(id)) {        Element parent = book.getParent();        parent.remove(book);      }    }  }  /**   * 該方法的作用是修改document中的內(nèi)容 將id為b002的元素的title改為Java Core,Price改為100.01   *    * @param document   */  private static void ModifyInformationOfXMLDocument(Document document) {    Element root = document.getRootElement();    List books = root.elements();    for (int i = 0; i < books.size(); i++) {      Element book = (Element) books.get(i);      if ("book2".equals(book.attributeValue("id"))) {        for (Iterator it = book.elementIterator(); it.hasNext();) {          Element node = (Element) it.next();          String type = node.getName();          if ("title".equals(type)) {            node.setText("JAVA Core");          }          if ("price".equals(type)) {            node.setText("100.01");          }        }      }    }    try {      writeToNewXMLDocument(document);    } catch (Exception e) {      // TODO Auto-generated catch block      e.printStackTrace();    }  }  /**   * 遍歷集合   *    * @param books   */  private static void traverseBooks(List<Book> books) {    for (Iterator<Book> iterator = books.iterator(); iterator.hasNext();) {      Book book = iterator.next();      System.out.println(book);    }  }  /**   * 該方法實(shí)現(xiàn)了對(duì)xml文檔的讀取功能   *    * @param document   * @return   */  private static List<Book> readAllElementsFromXMLDocument(Document document) {    List<Book> books = new ArrayList<Book>();    Element root = document.getRootElement();    List list = root.elements();    for (int i = 0; i < list.size(); i++) {      Element book = (Element) list.get(i);      Book b = new Book();      String id = book.attributeValue("id");      List ll = book.elements();      b.setId(id);      System.out.println(id);      for (int j = 0; j < ll.size(); j++) {        Element element = (Element) ll.get(j);        if ("title".equals(element.getName())) {          String          b.setTitle(title);          System.out.println(title);        }        if ("price".equals(element.getName())) {          String price = element.getText();          double p = Double.parseDouble(price);          b.setPrice(p);          System.out.println(price);        }      }      books.add(b);    }    return books;  }  /**   * 通過document對(duì)象將內(nèi)存中的dom樹保存到新的xml文檔。   *    * @param document   * @throws Exception   */  private static void writeToNewXMLDocument(Document document)      throws Exception {    XMLWriter writer = new XMLWriter(new FileWriter(        "src/com/zc/homeWork19/newbooks.xml"));    writer.write(document);    writer.close();  }  /**   * 該方法用于得到document對(duì)象。   *    * @return   * @throws Exception   */  private static Document getDocument() throws Exception {    SAXReader sr = new SAXReader();    Document document = sr.read("src//books.xml");    return document;  }}

Book.java

package com.zc.homeWork19;public class Book {  public String title;  public double price;  public String id;  public String getTitle() {    return title;  }  public void setTitle(String title) {    this.title = title;  }  public double getPrice() {    return price;  }  public void setPrice(double price) {    this.price = price;  }  public String getId() {    return id;  }  public void setId(String id) {    this.id = id;  }  public String toString() {    return "圖書ISBN為:" + id + "  書名為:" + title + "  價(jià)格為:" + price;  }}

book.xml

<?xml version="1.0" encoding="UTF-8"?><books>  <book id="book1">    <title>JAVA編程思想</title>    <price>80.00</price>  </book>  <book id="book2">    <title>JAVA 編程理論</title>    <price>100.00</price>  </book></books>

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到JAVA教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 蜜桃一本色道久久综合亚洲精品冫 | 国产亚洲精品久久久久婷婷瑜伽 | 国产papa| 免费黄色欧美视频 | 亚洲一级片免费观看 | 精品人人人人 | 大西瓜永久免费av在线 | 黄色av免费网站 | 欧美成人影院 | 爱福利视频网 | 国产91丝袜在线播放0 | 黄色毛片视频在线观看 | 国产成人羞羞视频在线 | 国产精品18久久久久久久 | 日本免费aaa观看 | 在线观看精品视频 | 欧美a视频 | 色播av在线 | 99在线啪 | 中国成人在线视频 | 久久丝袜脚交足黄网站免费 | 欧美日韩免费一区 | 国产精品区一区二区三区 | 91美女视频在线 | 在线观看免费视频麻豆 | 久久草草影视免费网 | 色污视频在线观看 | 国产精品成年片在线观看, 激情小说另类 | 亚洲精品欧美二区三区中文字幕 | 神马福利电影 | 羞羞视频免费观看网站 | 成人福利在线免费观看 | 亚洲国产一区二区三区 | 一级免费特黄视频 | 看免费黄色一级片 | 黄色av片在线观看 | 亚洲免费观看视频 | 天天夜天天操 | 加勒比色综合 | 在线中文字幕观看 | 羞羞的|