- package com.sunhoo.hcpms.util;
- import java.io.IOException;
- import java.io.StringReader;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import org.jdom.JDOMException;
- import org.jdom.input.SAXBuilder;
- import org.xml.sax.InputSource;
- /**
- * 通过JDOM解析XML字符串
- * @author java4lyvee@gmail.com
- */
- public class ParseXMLUtils {
- @SuppressWarnings("unchecked")
- public static Map<String, Object> parseXML(String xml)
- throws JDOMException, IOException {
- /** *用于存放节点的信息** */
- Map<String, Object> map = new HashMap<String, Object>();
- /** *创建一个新的字符串*** */
- StringReader xmlReader = new StringReader(xml);
- /** **创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入 */
- InputSource xmlSource = new InputSource(xmlReader);
- /** *创建一个SAXBuilder* */
- SAXBuilder builder = new SAXBuilder();
- /** *通过输入源SAX构造一个Document** */
- org.jdom.Document doc = builder.build(xmlSource);
- /** *获得根节点** */
- org.jdom.Element elt = doc.getRootElement();
- /** *获得BODY节点** */
- org.jdom.Element body = elt.getChild("BODY");
- /** *获得body节点下面的所有子节点*** */
- List<org.jdom.Element> child = body.getChildren();
- /** *遍历出body节点下面所有的子节点,节点名称和内容用put到map* */
- for (org.jdom.Element childEle : child) {
- map.put(childEle.getName(), childEle.getText());
- }
- return map;
- }
- }
Jdom解析源码
最新推荐文章于 2024-04-25 21:50:47 发布