MAP和XML之间的转换
来源:互联网 发布:2009的淘宝店 编辑:程序博客网 时间:2024/06/09 15:41
引用jar包:dom4j.jar 点击下载
/** * Map转换成Xml * @param map * @return */public static String map2Xmlstring(Map<String,Object> map){StringBuffer sb = new StringBuffer("");sb.append("<xml>");Set<String> set = map.keySet(); for(Iterator<String> it=set.iterator(); it.hasNext();){ String key = it.next(); Object value = map.get(key); sb.append("<").append(key).append(">"); sb.append(value); sb.append("</").append(key).append(">"); }sb.append("</xml>");return sb.toString();}
/** * Xml string转换成Map * @param xmlStr * @return */public static Map<String,Object> xmlString2Map(String xmlStr){Map<String,Object> map = new HashMap<String,Object>();Document doc;try {doc = DocumentHelper.parseText(xmlStr);Element el = doc.getRootElement();map = recGetXmlElementValue(el,map);} catch (DocumentException e) {e.printStackTrace();}return map;}
/** * 循环解析xml * @param ele * @param map * @return */@SuppressWarnings({ "unchecked" })private static Map<String, Object> recGetXmlElementValue(Element ele, Map<String, Object> map){List<Element> eleList = ele.elements();if (eleList.size() == 0) {map.put(ele.getName(), ele.getTextTrim());return map;} else {for (Iterator<Element> iter = eleList.iterator(); iter.hasNext();) {Element innerEle = iter.next();recGetXmlElementValue(innerEle, map);}return map;}}
测试:
public static void main(String[] args) {Map<String,Object> map = new HashMap<String,Object>();map.put("id1", "1111111");map.put("id2", "2222222");map.put("id3", "3333333");System.out.println(map2Xmlstring(map));
String xmlStr = "<xml><id2><it1>it1</it1><it2>it2</it2></id2><id1>1111111</id1><id3>3333333</id3></xml>";System.out.println(xmlString2Map(xmlStr));}结果:
<xml><id2>2222222</id2><id1>1111111</id1><id3>3333333</id3></xml>{id1=1111111, it1=it1, it2=it2, id3=3333333}
0 0
- MAP和XML之间的转换
- XML和Map集合之间的相互转换
- xml报文与map之间的转换
- xml文件和map之间的转化
- url参数和map之间的转换
- map和json之间的转换
- map和对象之间的转换
- xml字符串与map之间的相互转换
- javabean、xml、json、map之间的相互转换
- Java对象和XML之间的转换
- DataSet 和 XML之间的转换
- javaBean和xml之间的相互转换
- java和xml之间的转换
- XML和Java对象之间的转换
- XML和对象之间的转换
- Xml和bean之间的相互转换
- XML字符串和XML文档之间的自由转换
- 关于XML字符串和XML Document之间的转换《转》
- net嵌入页面的几种方法
- Oracle Instant Client(即时客户端) 安装与配置
- 木块问题(vector)-UVa 101
- 最长公共子序列(LCS---动态规划)
- Jquery通过append新元素之后事件绑定问题的解决方案
- MAP和XML之间的转换
- 桌面右键菜单,添加程序的方法
- (Ksoap)Android与Webservice通信
- mysql中单表操作
- 计算机的发展历程
- Android中listView联动效果
- java之环境变量设置
- Node.js Stream(流)
- 剑指Offer_59_按之字形顺序打印二叉树