1. 程式人生 > >JAVA使用Dom4j實現字串和xml檔案相互轉換

JAVA使用Dom4j實現字串和xml檔案相互轉換

在文章《JAVA 使用Dom4j 解析XML》中,介紹了使用Dom44j解析XML,比如節點的解析遍歷、節點的增加、刪除、寫入檔案等操作,本文我們繼續使用dom4j實現xml字串與xml檔案之間的轉換。

1、xml文件或節點轉換為字串

(1)程式碼

[java] view plaincopyprint?
  1. //xml文件或節點轉換為字串
  2.     @Test
  3.     publicvoid test5()throws Exception{  
  4.         //建立SAXReader物件
  5.         SAXReader reader = new SAXReader();  
  6.         //讀取檔案 轉換成Document
  7.         Document document = reader.read(new File("src/cn/com/yy/dom4j/s.xml"));  
  8.         //document轉換為String字串
  9.         String documentStr = document.asXML();  
  10.         System.out.println("document 字串:" + documentStr);  
  11.         //獲取根節點
  12.         Element root = document.getRootElement();  
  13.         //根節點轉換為String字串
  14.         String rootStr = root.asXML();  
  15.         System.out.println("root 字串:" + rootStr);  
  16.         //獲取其中student1節點
  17.         Element student1Node = root.element("student1");  
  18.         //student1節點轉換為String字串
  19.         String student1Str = student1Node.asXML();  
  20.         System.out.println("student1 字串:"
     + student1Str);  
  21.     }  
(2)結果 [html] view plaincopyprint?
  1. document 字串:<?xmlversion="1.0"encoding="UTF-8"?>
  2. <students>
  3.     <student1id="001">
  4.         <微信公眾號>@殘缺的孤獨</微信公眾號>
  5.         <學號>20140101</學號>
  6.         <地址>北京海淀區</地址>
  7.         <座右銘>要麼強大,要麼聽話</座右銘>
  8.     </student1>
  9.     <student2id="002">
  10.         <新浪微博>@殘缺的孤獨</新浪微博>
  11.         <學號>20140102</學號>
  12.         <地址>北京朝陽區</地址>
  13.         <座右銘>在哭泣中學會堅強</座右銘>
  14.     </student2>
  15. </students>
  16. root 字串:<students>
  17.     <student1id="001">
  18.         <微信公眾號>@殘缺的孤獨</微信公眾號>
  19.         <學號>20140101</學號>
  20.         <地址>北京海淀區</地址>
  21.         <座右銘>要麼強大,要麼聽話</座右銘>
  22.     </student1>
  23.     <student2id="002">
  24.         <新浪微博>@殘缺的孤獨</新浪微博>
  25.         <學號>20140102</學號>
  26.         <地址>北京朝陽區</地址>
  27.         <座右銘>在哭泣中學會堅強</座右銘>
  28.     </student2>
  29. </students>
  30. student1 字串:<student1id="001">
  31.         <微信公眾號>@殘缺的孤獨</微信公眾號>
  32.         <學號>20140101</學號>
  33.         <地址>北京海淀區</地址>
  34.         <座右銘>要麼強大,要麼聽話</座右銘>
  35.     </student1>
(3)其中s.xml檔案如下 [html] view plaincopyprint?
  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <students>
  3.     <student1id="001">
  4.         <微信公眾號>@殘缺的孤獨</微信公眾號>
  5.         <學號>20140101</學號>
  6.         <地址>北京海淀區</地址>
  7.         <座右銘>要麼強大,要麼聽話</座右銘>
  8.     </student1>
  9.     <student2id="002">
  10.         <新浪微博>@殘缺的孤獨</新浪微博>
  11.         <學號>20140102</學號>
  12.         <地址>北京朝陽區</地址>
  13.         <座右銘>在哭泣中學會堅強</座右銘>
  14.     </student2>
  15. </students>
2、xml字串轉換為Document物件

(1)程式碼

[java] view plaincopyprint?
  1. //xml字串轉換為Document物件
  2.     @Test
  3.     publicvoid test6()throws Exception{  
  4.         String xmlStr = "<employee><empname>@殘缺的孤獨</empname><age>25</age><title>軟體開發工程師</title></employee>";  
  5.         Document document = DocumentHelper.parseText(xmlStr);  
  6.         //寫入emp1.xml檔案
  7.         writerDocumentToNewFile(document);  
  8.     }  
(2)結果 [html] view plaincopyprint?
  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <employee>
  3.   <empname>@殘缺的孤獨</empname>
  4.   <age>25</age>
  5.   <title>軟體開發工程師</

    相關推薦

    JAVA使用Dom4j實現字串xml檔案相互轉換

    在文章《JAVA 使用Dom4j 解析XML》中,介紹了使用Dom44j解析XML,比如節點的解析遍歷、節點的增加、刪除、寫入檔案等操作,本文我們繼續使用dom4j實現xml字串與xml檔案之間的轉

    利用Google Gson實現JSON字串物件之間相互轉換

    最近一個專案需要用到JSON,需要在JSON字串和物件之間相互轉換,在網上找了些資料,發現google的Gson還是比較不錯的。 廢話不說,下面是簡單的例子: 先上原始碼:下載(包含jar包) Person實體類 package com.hsun.json; /** * Pe

    XML String字串 document 的相互轉換總結 .

    使用dom4j工具類 進行轉換 ===================================== -- XML String字串  轉  XML Document文件 String  

    PHP實現陣列XML檔案轉換

    最近搞微信支付,微信伺服器返回的都是XML檔案,所以需要轉換成陣列,才會便於操作,好了話不多說,直接上程式碼: 1.XML轉陣列 /** * 將xml轉為array * @param strin

    JAXB 實現Javaxml的互相轉換

    下面是 轉於 : https://blog.csdn.net/qq383264679/article/details/52231128           感謝博主 首先介紹下什麼是JAXB?

    gson實現字串與物件的相互轉換

    最近一個專案需要用到JSON,需要在JSON字串和物件之間相互轉換,在網上找了些資料,發現google的Gson還是比較不錯的。 廢話不說,下面是簡單的例子: 先上原始碼:下載(包含jar包) Person實體類 [java] view plain copy print?package com.hsu

    JS中實現字串陣列的相互轉化

            早上起來看了一道JS的面試題,是這樣描述的:利用var s1=prompt("請輸入任意的字串","")可以獲取使用者輸入 的字串,試程式設計將使用者輸入的字串“反轉”,並且將字串輸出

    Java實現時間時間戳相互轉換

    /* * 將時間轉換為時間戳 */ public static String dateToStamp(String s) throws ParseException{ String res; SimpleDateFormat simpleDa

    Java String字串Unicode字元相互轉換程式碼(包括混有普通字元的Unicode)

    package util; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * * <p>Title: String 與 Unicode 互相轉換的工具類</p> * <p>

    C#(C sharp)字串時間的相互轉換

    C#(C sharp)字串和時間的相互轉換。 一、DateTime –> string 時間型別轉化成字串型別,那是相當的簡單,直接呼叫ToString()方法即可。如: DateTime dt = DateTime.Now; string dtStr = dt.To

    實現JOSN與Xml相互轉換

    現在主流的資料格式為Json格式,但是我們如果對接銀行等金融方面的介面這時候就會必須要求我們格式為Xml格式的報文,這個時候我們如何解決呢? 程式碼如下: <d

    字串陣列的分割 以及 字串陣列的相互轉換

    一、將 $str="Hi I'm dutian"; 以空格分割,並放到陣列中$str = "Hi I'm dutian"; $arr = explode(" ",$str); print_R($arr); 二、將 $arr = array("Hi I'm dutian"); 

    前端JS陣列的刪除、新增方式,以及字串陣列的相互轉換、陣列的合併

    <script> var array=[1,3,5]; console.log(array); array.push(7,9); console.log("陣列後邊加入元素="+array); /

    iOS中字串富文字相互轉換

    /**  *  富文字轉html字串  */ + (NSString *)attriToStrWithAttri:(NSAttributedString *)attri{     NSDictionary *tempDic = @{NSDocumentTypeDocumen

    pandas中字串日期的相互轉換

    原文地址:http://blog.csdn.net/luoganttcc/article/details/77585038?locationNum=8&fps=1 將數字轉化成時間格式 from dateutil.parser import parse a

    C++字串int的相互轉換

    int本身也要用一串字元表示,前後沒有雙引號,告訴編譯器把它當作一個數解釋。預設情況下,是當成10進位制(dec)來解釋,如果想用8進位制,16進位制,怎麼辦?加上字首,告訴編譯器按照不同進位制去解釋。8進位制(oct)---字首加0,16進位制(hex)---字首加0

    XStream實現javabean與xml之間相互轉換

    XStream是thoughtworks公司釋出的一個簡單的Java類庫,用於將JavaBean序列化為XML,並且能夠將XML檔案反向轉換為JavaBean. 例項: user.java impor

    Java物件XML相互轉換

    /** * Copyright (c) 2005-2012 springside.org.cn */ package com.gs.mountain.common.mapper; import java.io.StringReader; import java.io.StringWriter; impo

    日期字串時間戳相互轉換Java程式碼

    最近在做畢業設計的時候,遇到一個需求,拿到一些時間格式,類似於"2012-12-01 12:02:00" 這樣的時間格式,然後讓程式以這些時間為起點,生成類似於"2012-12-01 12:02:01","2012-12-01 12:02:02","2012-12-01 12

    lua字串時間戳相互轉換

    1. 時間戳轉成格式化字串 直接利用函式os.date()將時間戳轉化成格式化字串. ``` local timestamp =