摘要:文件構(gòu)建這里指的是目錄下增加元素創(chuàng)建元素添加屬性添加文本節(jié)點(diǎn)追加到根節(jié)點(diǎn)元素中寫(xiě)入到文件刪除元素刪除根節(jié)點(diǎn)中第一個(gè)元素寫(xiě)入到文件修改元素修改第一個(gè)元素中的內(nèi)容寫(xiě)入到文件查看元素輸出元素的屬性值輸出元素的內(nèi)容值
XML文件
構(gòu)建DOMaaa
import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse(this.getClass().getResourceAsStream("/template.xml"));//這里指的是src目錄下增加元素
Element element = doc.createElement("task");//創(chuàng)建元素 element.setAttribute("id","AAA");//添加屬性 element.appendChild(doc.createTextNode("DDD"));//添加文本節(jié)點(diǎn) doc.getDocumentElement().appendChild(element);//追加到根節(jié)點(diǎn)元素中 TransformerFactory tFactory =TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer(); DOMSource source = new DOMSource(doc); StreamResult result = new StreamResult(new FileOutputStream(this.getClass().getResource("/template.xml").getPath())); transformer.transform(source, result);//寫(xiě)入到文件刪除元素
doc.getDocumentElement().removeChild(doc.getElementsByTagName("task").item(0));//刪除根節(jié)點(diǎn)中第一個(gè)task元素 TransformerFactory tFactory =TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer(); MSource source = new DOMSource(doc); StreamResult result = new StreamResult(new FileOutputStream(this.getClass().getResource("/template.xml").getPath())); transformer.transform(source, result);//寫(xiě)入到文件修改元素
doc.getElementsByTagName("task").item(0).getFirstChild().setNodeValue("ccc");//修改第一個(gè)task元素中的內(nèi)容 TransformerFactory tFactory =TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer(); OMSource source = new DOMSource(doc);StreamResult result = new StreamResult(new FileOutputStream(this.getClass().getResource("/template.xml").getPath())); transformer.transform(source, result);//寫(xiě)入到文件查看元素
NodeList tasks = doc.getDocumentElement().getChildNodes(); for(int i = 0;i < tasks.getLength();i++){ System.out.println(((Element)tasks.item(i)).getAttribute("id"));//輸出元素的id屬性值 System.out.println(tasks.item(i).getNodeValue);//輸出元素的內(nèi)容值 }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/110370.html
摘要:解析獲取解析器獲取文檔獲取根節(jié)點(diǎn)獲取根節(jié)點(diǎn)下所有的子節(jié)點(diǎn),也可以根據(jù)標(biāo)簽名稱獲取指定的直接點(diǎn)獲取元素的名稱和里面的文本創(chuàng)建創(chuàng)建節(jié)點(diǎn)創(chuàng)建屬性設(shè)置文本設(shè)置關(guān)系關(guān)于解析先講到這里了,請(qǐng)繼續(xù)關(guān)注樂(lè)字節(jié),后續(xù)超級(jí)干貨奉上,快快樂(lè)樂(lè)學(xué)。 大家好,樂(lè)字節(jié)的小樂(lè)又來(lái)了,Java技術(shù)分享哪里少的了小樂(lè)!上次我們說(shuō)了可擴(kuò)展標(biāo)記語(yǔ)言XML之二:XML語(yǔ)言格式規(guī)范、文檔組成,本文將介紹重點(diǎn)——XML解析。sh...
摘要:它提供了一套非常省力的,可通過(guò),以及類似于的操作方法來(lái)取出和操作數(shù)據(jù)。 XML:可擴(kuò)展標(biāo)記型語(yǔ)言 隨著json等一些技術(shù)的普及,似乎xml的路子越來(lái)越窄,雖然xml的一些功能被其他的一些技術(shù)代替,但是學(xué)習(xí)xml還是非常有必要,如果用xml存儲(chǔ)一些大量數(shù)據(jù),還是有一定優(yōu)勢(shì)的,就算你不管這些,但是現(xiàn)有的很多框架以及技術(shù)的配置文件都存在于xml中,最起碼你得對(duì)它的結(jié)構(gòu)以及一些基本用法有一定了...
摘要:通過(guò)解析器獲取文檔對(duì)象后,開(kāi)發(fā)人員可以很方便的對(duì)其進(jìn)行操作,如獲取更元素,獲取一個(gè)子元素,增加子元素,移除子元素。它并沒(méi)有為解析提供任何新功能,但是它為在獲取與解析器提供了更加直接的途徑。自身不包含解析器,默認(rèn)使用隨包一起發(fā)行的。 showImg(/img/bVDhQE?w=888&h=220); 文章最初發(fā)表于我的個(gè)人博客非典型性程序猿 眾所周知,SAX與DOM是JAVA中兩大核心X...
摘要:通過(guò)解析器獲取文檔對(duì)象后,開(kāi)發(fā)人員可以很方便的對(duì)其進(jìn)行操作,如獲取更元素,獲取一個(gè)子元素,增加子元素,移除子元素。它并沒(méi)有為解析提供任何新功能,但是它為在獲取與解析器提供了更加直接的途徑。自身不包含解析器,默認(rèn)使用隨包一起發(fā)行的。 showImg(https://segmentfault.com/img/bVDhQE?w=888&h=220); 文章最初發(fā)表于我的個(gè)人博客非典型性程序猿...
摘要:文件構(gòu)建這里指的是目錄下增加元素創(chuàng)建元素添加屬性添加文本節(jié)點(diǎn)追加到根節(jié)點(diǎn)元素中寫(xiě)入到文件刪除元素刪除根節(jié)點(diǎn)中第一個(gè)元素寫(xiě)入到文件修改元素修改第一個(gè)元素中的內(nèi)容寫(xiě)入到文件查看元素輸出元素的屬性值輸出元素的內(nèi)容值 XML文件 aaa 構(gòu)建DOM import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.Docume...
閱讀 2535·2021-11-19 09:40
閱讀 3674·2021-11-17 17:08
閱讀 3950·2021-09-10 10:50
閱讀 2303·2019-08-27 10:56
閱讀 2006·2019-08-27 10:55
閱讀 2708·2019-08-26 12:14
閱讀 1048·2019-08-26 11:58
閱讀 1544·2019-08-26 10:43