xml工具类,把map转为为xml类型的字符串和把xml类型的字符串转化为map

/**
* 将map转化为xml类型的字符串
* @param map
* @return
*/
public static String callMapToXML(Map map) {
StringBuffer sb = new StringBuffer();
sb.append("<xml>");
mapToXMLTest2(map,sb);
sb.append("</xml>");
try {
return sb.toString();
} catch (Exception e) {
}
return null;
}
private static void mapToXMLTest2(Map map,StringBuffer sb) {
Set set = map.keySet();
for (Iterator it = set.iterator(); it.hasNext();) {
String key = (String) it.next();
Object value = map.get(key);
if (null == value)
value = "";
if (value.getClass().getName().equals("java.util.ArrayList")) {
ArrayList list = (ArrayList) map.get(key);
sb.append("<" + key + ">");
for (int i = 0; i < list.size(); i++) {
HashMap hm = (HashMap) list.get(i);
mapToXMLTest2(hm,sb);
}
sb.append("</" + key + ">");

} else {
if (value instanceof HashMap) {
sb.append("<" + key + ">");
mapToXMLTest2((HashMap) value,sb);
sb.append("</" + key + ">");
} else {
sb.append("<" + key + ">" + value + "</" + key + ">");
}

} } } /** * 把xml类型的字符串转化为map * @param responseResult * @return */ public static Map<String,Object> getMapFromXML(String xmlStr) { SAXBuilder builder = new SAXBuilder(); Map<String,Object> map = new HashMap<String,Object>(); try { Reader in = new StringReader(xmlStr); Document doc = builder.build(in); Element root = doc.getRootElement(); List<Element> list = root.getChildren(); for (Element e : list) map.put(e.getName(),e.getText()); return map; } catch (JDOMException e) { } catch (UnsupportedEncodingException e) { } catch (IOException e) { } catch (Exception e) { } return map; }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类
XML入门的常见问题(二)
Java对象的强、软、弱和虚引用
JS解析XML文件和XML字符串详解
java中枚举的详细使用介绍
了解Xml格式
XML入门的常见问题(四)
深入SQLite多线程的使用总结详解
PlayFramework完整实现一个APP(一)
XML和YAML的使用方法
XML轻松学习总节篇