|
理所当然,首先得下载个jdom.jar文件.下面便是jdom解析xml文档的具体实例.注解已标明. package com.hj; import java.io.FileInputStream; import java.net.URL; import java.sql.SQLException; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import org.jdom.Document; import org.jdom.Element; import org.jdom.input.SAXBuilder; public class ReadConfig { /* * 单例 */ private ReadConfig() { } private static ReadConfig read = new ReadConfig(); public static ReadConfig getInstance() { return read; } /* * 此方法用来得到XML文档路径,xml文档放于src目录下 */ public String getPath() { URL url = ReadConfig.class.getClassLoader().getResource(""); String xml = url.getPath() + "/config.xml"; return xml; } /* * 此方法用来解析XML文档 */ public Map<String, String> readXml() { Map<String, String> map = new HashMap<String, String>(); SAXBuilder sb = new SAXBuilder();// jdom解析器 try { Document doc = sb.build(new FileInputStream(getPath()));// 解析的文档是Document对象 Element root = doc.getRootElement(); List list = root.getChildren();//把得到的元素存放于集合中,方便遍历 List lst = null; for (Iterator iter = list.iterator(); iter.hasNext();) { Element e = (Element) iter.next(); lst = e.getChildren();//把得到的元素存放于集合中,循环遍历 for (Iterator iterator = lst.iterator(); iterator.hasNext();) { Element ee = (Element) iterator.next(); map.put(ee.getName(), ee.getValue()); System.out.println(ee.getName() + ee.getValue()); } } } catch (Exception e) { e.printStackTrace(); } return map; } }
|
一共有 0 条评论