使用jdom解析xml字符串

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.Namespace;

   StringReader read = new StringReader(strXml);
		           //創建新的輸入源SAX 解析器將使用 InputSource 對象來確定如何讀取 XML 輸入
		           InputSource source = new InputSource(read);
		           //創建一個新的SAXBuilder
		           SAXBuilder sb = new SAXBuilder();
		           try {
		               //通過輸入源構造一個Document
		               Document doc = sb.build(source);
		               //取的根元素
		               Element root = doc.getRootElement();
		               //輸出根元素的名稱(測試)
		               System.out.println(root.getName());
		               //得到根元素所有子元素的集合
		               List jiedian = root.getChildren();
		               List<Element> list = root.getChildren();
		               for(Element e :list){
		            	   System.out.println(e.getName());
		            	   System.out.println("emr_id:"+e.getAttributeValue("emr_id"));
		            	   System.out.println("title:"+e.getAttributeValue("title"));
		               }
		               //獲得XML中的命名空間
		               Namespace ns = root.getNamespace();
		               Element et = null;
		            /*   for(int i=0;i<jiedian.size();i++){
		                   et = (Element) jiedian.get(i);//循環依次得到子元素
		                  
		                   System.out.println(et.getChild("emr_id",ns).getText());
		                   System.out.println(et.getChild("title",ns).getText());
		               }*/
		              
/*		               et = (Element) jiedian.get(0);
		               List zjiedian = et.getChildren();
		               System.out.println(zjiedian.size());
		               for(int j=0;j<zjiedian.size();j++){
		                   Element xet = (Element) zjiedian.get(j);
		                   System.out.println(xet.getName());
		               }*/
		           } catch (JDOMException e)
		               e.printStackTrace();
		           } catch (IOException e) {
		               e.printStackTrace();
		           }
		     } 

解析的xml字符串爲:

<root><row emr_id="415555_1_00010001" title="知情同意權告知書" template_id="" catalog_id="" emr_type="6" sort_code="1" create_time="2011/11/15 17:02:57" sign="黃琦" /><row emr_id="415555_1_00010002" title="產科通用模版" template_id="" catalog_id="" emr_type="2" sort_code="2" create_time="2011/11/15 17:08:36" sign="黃琦" /><row emr_id="415555_1_00010003" title="剖宮產術,子宮下段橫切口術前談話" template_id="" catalog_id="" emr_type="b" sort_code="3" create_time="2011/11/15 19:04:49" sign="黃琦" /><row emr_id="415555_1_00010004" title="剖宮產術,子宮下段橫切口手術查對確認單" template_id="" catalog_id="" emr_type="b" sort_code="4" create_time="2011/11/15 19:06:01" sign="黃琦" /><row emr_id="415555_1_00010005" title="剖宮產術,子宮下段橫切口手術風險評估單" template_id="" catalog_id="" emr_type="b" sort_code="5" create_time="2011/11/15 19:06:29" sign="黃琦" /><row emr_id="415555_1_00010006" title="輸血治療同意書" template_id="" catalog_id="" emr_type="6" sort_code="6" create_time="2011/11/15 19:11:29" sign="黃琦" /><row emr_id="415555_1_00010007" title="患者授權委託書" template_id="" catalog_id="" emr_type="6" sort_code="7" create_time="2011/11/15 19:13:07" sign="黃琦" /><row emr_id="415555_1_00010008" title="輸血申請單" template_id="" catalog_id="" emr_type="6" sort_code="8" create_time="2011/11/15 19:13:27" sign="黃琦" /><row emr_id="415555_1_00010009" title="領血憑證" template_id="" catalog_id="" emr_type="6" sort_code="9" create_time="2011/11/15 19:16:31" sign="黃琦" /><row emr_id="415555_1_00010010" title="日常病程記錄" template_id="" catalog_id="" emr_type="4" sort_code="10" create_time="2011/11/15 19:43:03" sign="黃琦" /><row emr_id="415555_1_00010012" title="剖宮產術,子宮下段橫切口手術風險評估單" template_id="" catalog_id="" emr_type="b" sort_code="12" create_time="2011/11/15 20:26:17" sign="黃琦" /><row emr_id="415555_1_00010014" title="剖宮產術,子宮下段橫切口手術記錄" template_id="" catalog_id="" emr_type="b" sort_code="14" create_time="2011/11/15 21:46:29" sign="葉明珠" /><row emr_id="415555_1_00010016" title="出院記錄" template_id="" catalog_id="" emr_type="3" sort_code="16" create_time="2011/11/16 10:49:26" sign="陳海嘯" /></root>

導入的jdom的jar包:


解析起來很簡單


發佈了25 篇原創文章 · 獲贊 4 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章