Dom4j增加,修改佩耳,刪除XML文件

一.如何配置Dom4j

xml解析: 點(diǎn)擊查看

二.修改項(xiàng)目類內(nèi)容

  • 1.)增加:文檔遂蛀,標(biāo)簽,屬性
  • 2.)修改:屬性值干厚,文本
  • 3.)刪除:標(biāo)簽李滴,屬性
1.)增加:文檔螃宙,標(biāo)簽,屬性
a.創(chuàng)建文本write.xml
//創(chuàng)建文本
       Document doc = DocumentHelper.createDocument();
b.創(chuàng)建標(biāo)簽
// 創(chuàng)建標(biāo)簽
        Element rootElem=doc.addElement("contactList");//創(chuàng)建根標(biāo)簽
        Element contElem = rootElem.addElement("cotact");創(chuàng)建子標(biāo)簽
        contElem.addAttribute("id","001");//增加屬性
        Element nameElme = contElem.addElement("name");//增加子標(biāo)簽
        nameElme.addText("張三");//添加姓名
        rootElem.addElement("cotact");//添加標(biāo)簽
c.把創(chuàng)建的Document對(duì)象寫到xml文件
//3把創(chuàng)建的Document對(duì)象寫到xml文件
        //指定文件輸出位置
        FileOutputStream out = new FileOutputStream("./src/write.xml");
        //OutputFormat format = OutputFormat.createCompactFormat();//生成物理文件所坯,布局較亂適合電腦
        OutputFormat format = OutputFormat.createPrettyPrint();//標(biāo)準(zhǔn)化布局谆扎,適合查看時(shí)顯示。
        //1.創(chuàng)建寫入文件
        format.setEncoding("utf-8");//指定文件格式 
        XMLWriter writer = new XMLWriter(out,format);
        writer.write(doc);//寫入文件
        System.out.println("寫入成功");
        writer.close();

結(jié)果如下:

增加:文本芹助,標(biāo)簽堂湖,屬性
2.)修改:屬性值,文本
注意:修改xml源文件one.xml周瞎;將修改的內(nèi)容寫入write.xml
<?xml version="1.0" encoding="UTF-8"?>
<contactList>
    <contact id="1">
        <name>某某</name>
        <age>20</age>
        <phone>15426354785</phone>
        <qq>1024557455</qq>
    </contact>
    <contact id="2">
        <name>張三</name>
        <age>44</age>
        <phone>17854213658</phone>
        <qq>1024532584</qq>
    </contact>
</contactList>
a.修改屬性值

方案一:

//修改屬性值第一個(gè)id改為“003”
        Document doc = new SAXReader().read("./src/one.xml");//得到標(biāo)簽對(duì)象
        Element contEle = doc.getRootElement().element("contact");//得到屬性對(duì)象
        Attribute idAtt = contEle.attribute("id");
        idAtt.setValue("003");
方案一:修改xml源文件one.xml苗缩;將修改的內(nèi)容寫入write.xml

方案二:

//修改屬性值第一個(gè)id改為“004”
        //Element contEle2 = doc.getRootElement().element("contact");   //得到屬性對(duì)象
        //contEle2.addAttribute("id", "004");
方案二:修改xml源文件one.xml;將修改的內(nèi)容寫入write.xml
b.修改文本
// 修改文本  1得到標(biāo)簽声诸,2修改文本 將第一個(gè)name值修改為張飛
        Element nameEle = doc.getRootElement().element("contact").element("name");
        nameEle.setText("張飛");
修改文本將第一個(gè)name值修改為張飛
3.)刪除:標(biāo)簽酱讶,屬性
注意:刪除xml源文件one.xml內(nèi)容;將刪除后的內(nèi)容寫入write.xml
<?xml version="1.0" encoding="UTF-8"?>
<contactList>
    <contact id="1">
        <name>某某</name>
        <age>20</age>
        <phone>15426354785</phone>
        <qq>1024557455</qq>
    </contact>
    <contact id="2">
        <name>張三</name>
        <age>44</age>
        <phone>17854213658</phone>
        <qq>1024532584</qq>
    </contact>
</contactList>
a.刪除標(biāo)簽

方案一:

//刪除第一個(gè)age標(biāo)簽
    Element agename = doc.getRootElement().element("contact").element("age");//1.得到標(biāo)簽
    agename.detach();//刪除標(biāo)簽

方案二:

//刪除第一個(gè)age標(biāo)簽
    Element agename = doc.getRootElement().element("contact").element("age");//1.得到標(biāo)簽
   agename.getParent().remove(agename);//獲得該標(biāo)簽的父標(biāo)簽彼乌,然后在刪除其子標(biāo)簽
刪除第一個(gè)age標(biāo)簽
b.刪除屬性

方案一:

//刪除第2個(gè)id
   Element contEle = (Element) doc.getRootElement().elements().get(1);
   //得到屬性對(duì)象
   Attribute idatt= contEle.attribute("id");
   //方法一
   idatt.detach();//刪除屬性

方案二:

//刪除第2個(gè)id屬性
  Element contEle = (Element) doc.getRootElement().elements().get(1);
  //得到屬性對(duì)象
  Attribute idatt= contEle.attribute("id");
  idatt.getParent().remove(idatt);
刪除第2個(gè)id屬性
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末泻肯,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子慰照,更是在濱河造成了極大的恐慌灶挟,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,039評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件毒租,死亡現(xiàn)場(chǎng)離奇詭異稚铣,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)墅垮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門惕医,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人算色,你說我怎么就攤上這事抬伺。” “怎么了灾梦?”我有些...
    開封第一講書人閱讀 165,417評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵峡钓,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我若河,道長(zhǎng)能岩,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,868評(píng)論 1 295
  • 正文 為了忘掉前任牡肉,我火速辦了婚禮捧灰,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,892評(píng)論 6 392
  • 文/花漫 我一把揭開白布厢岂。 她就那樣靜靜地躺著,像睡著了一般焕蹄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上阀溶,一...
    開封第一講書人閱讀 51,692評(píng)論 1 305
  • 那天腻脏,我揣著相機(jī)與錄音,去河邊找鬼银锻。 笑死永品,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的击纬。 我是一名探鬼主播鼎姐,決...
    沈念sama閱讀 40,416評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼更振!你這毒婦竟也來了炕桨?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,326評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤肯腕,失蹤者是張志新(化名)和其女友劉穎献宫,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體实撒,經(jīng)...
    沈念sama閱讀 45,782評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡姊途,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,957評(píng)論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了知态。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片吭净。...
    茶點(diǎn)故事閱讀 40,102評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖肴甸,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情囚巴,我是刑警寧澤原在,帶...
    沈念sama閱讀 35,790評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站彤叉,受9級(jí)特大地震影響庶柿,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜秽浇,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,442評(píng)論 3 331
  • 文/蒙蒙 一浮庐、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦审残、人聲如沸梭域。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽病涨。三九已至,卻和暖如春璧坟,著一層夾襖步出監(jiān)牢的瞬間既穆,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評(píng)論 1 272
  • 我被黑心中介騙來泰國打工雀鹃, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留幻工,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,332評(píng)論 3 373
  • 正文 我出身青樓黎茎,卻偏偏與公主長(zhǎng)得像囊颅,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子工三,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,044評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理迁酸,服務(wù)發(fā)現(xiàn),斷路器俭正,智...
    卡卡羅2017閱讀 134,661評(píng)論 18 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法奸鬓,類相關(guān)的語法,內(nèi)部類的語法掸读,繼承相關(guān)的語法串远,異常的語法,線程的語...
    子非魚_t_閱讀 31,639評(píng)論 18 399
  • HTML標(biāo)簽解釋大全 一儿惫、HTML標(biāo)記 標(biāo)簽:!DOCTYPE 說明:指定了 HTML 文檔遵循的文檔類型定義(D...
    米塔塔閱讀 3,247評(píng)論 1 41
  • 1. 前天,女兒所在的幼兒園開學(xué)铛铁,并且當(dāng)天上午還舉行防拐隔显、防騙親子培訓(xùn),所以我干脆請(qǐng)了半天假饵逐。一大早括眠,就開車帶著女...
    小樂爸爸閱讀 5,583評(píng)論 22 158
  • 一、辣個(gè)驚為天人的納爾 15年年初的時(shí)候倍权,我第一次接觸英雄聯(lián)盟掷豺。當(dāng)時(shí)還對(duì)這款游戲所知甚少,所以也并沒有覺得,lol...
    _嵐青竹閱讀 1,385評(píng)論 15 8