1. 程式人生 > >java基礎73 dom4j修改xml裡面的內容(網頁知識)

java基礎73 dom4j修改xml裡面的內容(網頁知識)

  1 package com.shore.code;
  2 
  3 import java.io.File;
  4 import java.io.FileOutputStream;
  5 import java.io.IOException;
  6 
  7 import org.dom4j.Attribute;
  8 import org.dom4j.Document;
  9 import org.dom4j.DocumentHelper;
 10 import org.dom4j.Element;
 11 import org.dom4j.io.OutputFormat;
 12
import org.dom4j.io.SAXReader; 13 import org.dom4j.io.XMLWriter; 14 import org.junit.Test; 15 16 /** 17 * @author DSHORE / 2018-9-3 18 * 19 */ 20 /* 21 * 修改xml內容 22 * 增加:文件,標籤,屬性 23 * 修改:屬性值,文字 24 * 刪除:標籤,屬性 25 * */ 26 public class Demo3 { 27 /* 28 * 增加:文件,標籤,屬性 29 *
*/ 30 @Test 31 public void test1() throws IOException{ 32 /* 33 *建立文件 34 * */ 35 Document doc=DocumentHelper.createDocument(); 36 Element rootelem=doc.addElement("contactList"); 37 Element contactElem=rootelem.addElement("contact"); 38 Element nameEle = contactElem.addElement("name");
39 nameEle.addEntity("name", "張三");//新增實體內容 40 Element ageEle = contactElem.addElement("age"); 41 ageEle.addComment("張三");//添加註釋 42 /* 43 * 增加屬性 44 * */ 45 contactElem.addAttribute("id","001"); 46 contactElem.addAttribute("name","zhangsan"); 47 //1.建立輸出流通道 48 FileOutputStream out=new FileOutputStream("F:/contact.xml"); 49 //設定寫入contact.xml檔案的內容/標籤格式(俗稱:美觀格式) 50 OutputFormat format=OutputFormat.createPrettyPrint(); 51 //設定編碼格式 52 format.setEncoding("utf-8"); 53 //2.建立寫出的物件,把修改後的Document物件寫出到xml中 54 XMLWriter write=new XMLWriter(out,format); 55 //3.寫出物件 56 write.write(doc); 57 //4.關閉資源 58 write.close(); 59 } 60 /* 61 * 修改:屬性值,文字 62 * */ 63 @Test 64 public void test2() throws Exception{ 65 //1.建立並讀取一個Document物件 66 Document doc=new SAXReader().read(new File("./src/contact.xml")); 67 /* 68 * 方案一:修改屬性值 1.得到標籤物件 2.得到屬性物件 3.修改屬性值 69 * */ 70 //2.得到標籤物件 71 Element contatcElem=doc.getRootElement().element("contact"); 72 //3.得到屬性物件 73 Attribute idAttr=contatcElem.attribute("id"); 74 //4.修改屬性值 75 idAttr.setValue("005"); 76 /* 77 * 方案二:修改屬性值 78 * */ 79 //2.得到標籤物件 80 Element contatcElem2=doc.getRootElement().element("contact"); 81 //3.通過增加同名的屬性的方法,修改屬性值 82 contatcElem2.addAttribute("id","006"); 83 /* 84 * 修改文字: 1.得到標籤 2.修改文字 85 * */ 86 Element nameElement=doc.getRootElement().element("contact").element("name"); 87 nameElement.setText("王五"); 88 //1.建立輸出流通道 89 FileOutputStream out=new FileOutputStream("F:/contact.xml"); 90 OutputFormat format=OutputFormat.createPrettyPrint();//設定contact.xml檔案格式(俗稱:美觀格式) 91 format.setEncoding("utf-8");//設定編碼格式 92 //2.建立寫出的物件 93 XMLWriter write=new XMLWriter(out,format); 94 //3.寫出物件 95 write.write(doc); 96 //4.關閉資源 97 write.close(); 98 } 99 /* 100 * 刪除:標籤,屬性 101 * */ 102 @Test 103 public void test3() throws Exception{ 104 Document doc=new SAXReader().read(new File("./src/contact.xml")); 105 /* 106 * 刪除標籤: 1.得到標籤 2.刪除標籤物件 107 * */ 108 //得到標籤 109 Element ageElement=doc.getRootElement().element("contact").element("age"); 110 //刪除標籤物件 111 //ageElement.detach(); 112 ageElement.getParent().remove(ageElement);//和上面的效果是一樣的 113 /* 114 * 2.刪除屬性 1.得到屬性物件 2.刪除屬性 115 * */ 116 //得到屬性物件 117 //得到第二個contact標籤 118 Element contactElement=(Element)doc.getRootElement().elements().get(1);//get()裡面填0代表第一個contact標籤,填1代表第二contact標籤。相當於陣列的下標 119 //得到屬性物件 120 Attribute idAttribute=contactElement.attribute("id"); 121 //刪除屬性 122 idAttribute.detach(); 123 //idAttribute.getParent().remove(idAttribute);//和上面的效果是一樣的 124 FileOutputStream out=new FileOutputStream("F:/contact.xml"); 125 OutputFormat format=OutputFormat.createPrettyPrint(); 126 format.setEncoding("utf-8"); 127 XMLWriter write=new XMLWriter(out,format); 128 write.write(doc); 129 write.close(); 130 } 131 }

相關推薦

java基礎73 dom4j修改xml裡面內容網頁知識

1 package com.shore.code; 2 3 import java.io.File; 4 import java.io.FileOutputStream; 5 import java.io.IOException; 6 7 import org.dom4j.A

java基礎81 jsp的內建物件網頁知識

1、什麼是內建物件?   在jsp開發中,會頻繁使用到一些物件,如:HttpSession,ServletContext,HttpServletRequest。      如果每次使用這些物件時,都要去建立物件 顯示非常麻煩。所有sun公司就設計jsp時,在jsp頁面載入完畢後會自動幫助開發者建立好這些物件,

java基礎-使用dom4j解析XML檔案

一 解析XML 解析過程      /* * 解析XML檔案的基本流程* 1:建立SAXReader,用來讀取XML*   檔案* 2:指定xml檔案使得SAXReader讀取,*   並解析問文件物件Document* 3:獲取根元素* 4:獲取每一個元素,從而達到解析的

java基礎70 負責靜態的網頁的制作語言XML網頁知識

引號 自定義 交互 ref 特殊 通訊 key alt 如果 HTML:負責網頁結構的CSS:負責網頁的樣式(美觀)JavaScript:負責客戶(瀏覽器)端與用戶進行交互 1、HTML語言的特點 1.由標簽組成 2.語法結構松散 3.大小寫不區分

java基礎73 待續網頁知識

bsp 說明 http col tro font -s .cn java基礎 1、待續 待續 原創作者:DSHORE 作者主頁:http://www.cnblogs.com/dshore123/ 原文出自:https://www.cnbl

java基礎74 XML解析中的SAX解析相關知識點網頁知識

1、SAX解析工具     SAX解析工具:是Sun公司提供的,內建JDK中。org.xml.sax.*         2、SAX解析的核心API SAXParser類:用於讀取和解析xml檔案物件    parse(File f, DefaultHandler dh)方法----->解析xml檔案

java基礎71 XML解析中的【DOM和SAX解析工具】相關知識點網頁知識

本文知識點(目錄):本文下面的“例項及附錄”全是DOM解析的相關內容 1、xml解析的含義     xml檔案除了給開發者看,更多情況下是使用程式讀取xml檔案中的內容 2、XML的解析方式     DOM解析    SAX解析 3、xml的解析工具 3.1、DOM解析工具     1.JAXP(orac

java基礎65 JavaScript中的 網頁知識

str order 幫助 ron target logs .com font tro 1、待續 待續 原創作者:DSHORE 作者主頁:http://www.cnblogs.com/dshore123/ 原文出自:https://www.cnbl

java基礎74 待續2網頁知識

tps str log strong body cnblogs logs blank targe 1、待續 待續 原創作者:DSHORE 作者主頁:http://www.cnblogs.com/dshore123/ 原文出自:

java基礎75 待續2網頁知識

謝謝 logs borde 幫助 www. targe 轉載 .com http 1、待續 待續 原創作者:DSHORE 作者主頁:http://www.cnblogs.com/dshore123/ 原文出自:https://ww

java基礎81 jsp的內置對象網頁知識

什麽是 basepath 緬甸 exceptio 中文 bili sun公司 ESS pwrite 1、什麽是內置對象? 在jsp開發中,會頻繁使用到一些對象,如:HttpSession,ServletContext,HttpServletRequest。 如

Java建立以及讀寫xml文件dom方式

package myXML; import org.w3c.dom.*; import org.xml.sax.*; import java.io.*; import javax.xml.parsers.*; import javax.xml.transform.*;

java基礎80 JSP基礎知識點網頁知識

1、jsp的引入     Servlet的作用:用java語言開發動態資源技術!!!    Jsp的作用:用java語言(+html語言)開發的動態資源技術!!!     Jsp就是servlet 問題:為什麼jsp就是servlet? 因為:Jsp翻譯成java檔案 public final class

java基礎75 xpth技術網頁知識

1、xpth技術 1.1、xpath的作用     主要用於快速獲取所需的節點物件。     list<Node> selectNodes("xpath");  查詢多個節點物件                     selectSingleNode("xpath");  查詢一個節點物件 1.

Java基礎83 待續網頁知識

java 主頁 idt htm href www 轉載 -s width 1、待續 待續 原創作者:DSHORE 作者主頁:http://www.cnblogs.com/dshore123/ 原文出自:https://www.cnblogs.

Java&Xml教程使用DOM方式修改XML檔案內容

DOM解析方式也可用於修改XML資料,我們可以使用它完成新增元素、刪除元素、修改元素值、修改元素屬性等操作。 我們的XML檔案,內容如下: employee.xml <?xml version="1.0" encoding="UTF-8" sta

java中使用dom4j解析xml

() while 9.png eval ted eva har main root 創建xml文檔並輸出到文件 import java.io.File; import java.io.FileOutputStream; import org.dom4j.Documen

使用dom4j修改XML格式的字串

XML格式 <data> <ryzd> <record> <western> <record> <diagnoses

XML的寫入_dom4j新增、刪除、修改Xml檔案內容

XML的寫入_dom4j新增、刪除、修改Xml檔案內容 【工程截圖】 【person.xml】準備一個xml檔案 <?xml version="1.0" encoding="UTF-8"?> <students> <student id="8888

java中的DOM4J解析XML

1.DOM4J是目前使用非常廣泛的一種解析XML技術,與DOM相比,他的使用更加方便,操作簡單! 2.DOM4J是一個易用的,開源的庫,可以用於XML、XPath、XSLT等。 3.DOM4J的主要介面都在org.dom4j包裡定義。 Attribute:定義XML的屬性