dom4j解析xml示例
java xml解析框架dom4j解析xml示例
public class Dom4JTest {
private static Dom4JTest dom4JTest=null;
private static Document document = null;
static{
try {
InputStream inputStream = Dom4JTest.class.getClassLoader().getResourceAsStream("cp-info.xml");
// 讀取輸入流
SAXReader reader = new SAXReader();
document = reader.read(inputStream);
} catch (DocumentException e) {
e.printStackTrace();
}
}
private Dom4JTest() {
}
public static Dom4JTest getInstance(){
if(dom4JTest==null){
dom4JTest = new Dom4JTest();
}
return dom4JTest;
}
public List<Map<String,String>> getCpInfoByCpName(String cpName) throws Exception{
List<Map<String,String>> returnList = new ArrayList<Map<String,String>>();
// 得到xml根元素
Element root = document.getRootElement();
List cpelements = root.elements("cp");
for(Element e:cpelements){
String name = e.attribute("name").getValue();
if(cpName.equals(name)){
List itemElement = e.element("items").elements("item");
for(Element et:itemElement){
String title =et.element("title").getTextTrim();
String picurl = et.element("picurl").getTextTrim();
String url = et.element("url").getTextTrim();
Map<String,String> map = new HashMap<String,String>();
map.put("title", title);
map.put("picurl", picurl);
map.put("url", url);
returnList.add(map);
}
}
}
return returnList;
}
public static void main(String[] args) throws Exception {
Dom4JTest instance = Dom4JTest.getInstance();
List<Map<String, String>> cpInfoByCpName = instance.getCpInfoByCpName("借貸寶");
for(Map<String, String> m:cpInfoByCpName){
System.out.println(m.get("title"));
System.out.println(m.get("picurl"));
System.out.println(m.get("url"));
}
}
}
<?xml version="1.0" encoding="UTF-8"?>
<all>
<cp name="name-1">
<items>
<item>
<title>
title-測試
</title>
<description>
</description>
<picurl>
http://test/img/big.png
</picurl>
<url>
<![CDATA[
http://test/s?&idx=1&sn=49f13b923649b6d0098c3aadbf715f2d#rd
]]>
</url>
</item>
<item>
<title>
title-測試-2
</title>
<description>
</description>
<picurl>
http://test/img/big-2.png
</picurl>
<url>
<![CDATA[
http://test/s?&idx=2&sn=49f13b923649b6d0098c3aadbf715f2d#rd
]]>
</url>
</item>
</items>
</cp>
<cp name="name-2">
<items>
<item>
<title>
title-測試
</title>
<description>
</description>
<picurl>
http://test/img/big-2.png
</picurl>
<url>
<![CDATA[
http://test/s?&idx=1&sn=49f13b923649b6d0098c3aadbf715f2d#rd
]]>
</url>
</item>
</items>
</cp>
<all>
本文由用戶 bubblue 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!