xml与map之间互转(java)
来源:互联网 发布:微信朋友圈数据采集 编辑:程序博客网 时间:2024/05/16 04:00
@SuppressWarnings("unchecked")public static String toXml(Object o) {StringBuffer xml = new StringBuffer("");if (o != null) {if (Map.class.isInstance(o) == true) {Map<String, ?> m = (Map<String, ?>) o;Iterator<String> it = m.keySet().iterator();while (it.hasNext()) {String key = it.next();xml.append("<" + key + ">");if (Map.class.isInstance(m.get(key)) == true|| List.class.isInstance(m.get(key)) == true) {xml.append(toXml(m.get(key)));} else {xml.append(m.get(key));}xml.append("</" + key + ">");}} else if (List.class.isInstance(o) == true) {List<?> l = (List<?>) o;for (int i = 0; i < l.size(); i++) {xml.append(toXml(l.get(i)));}}}return xml.toString();}@SuppressWarnings({ "rawtypes", "unchecked" })public static Map<String, HashMap<?, ?>> toMap(String xml) {Map<String, HashMap<?, ?>> m = new HashMap<String, HashMap<?, ?>>();try {Document document = DocumentHelper.parseText(xml);Element nodeElement = document.getRootElement();if (nodeElement != null) {m.put(nodeElement.getName(), null);List<?> node = nodeElement.elements();if (node != null) {m.put(nodeElement.getName(), new HashMap());for (Iterator<?> it = node.iterator(); it.hasNext();) {Element elm = (Element) it.next();((Map) m.get(nodeElement.getName())).put(elm.getName(),elm.getText());}}}} catch (Exception e) {e.printStackTrace();}return m;}public static String maptoXml(Map<String, String> map) {Document document = DocumentHelper.createDocument();document.setXMLEncoding("UTF-8");Element nodeElement = document.addElement("xml");for (Map.Entry<String, String> str : map.entrySet()) {if (isNotEmpty(str.getValue())) {Element keyElement = nodeElement.addElement(str.getKey());keyElement.addCDATA(str.getValue());}}return document.asXML();}private static boolean isNotEmpty(String str) {if (null == str || "".equals(str.trim()) || "null".equals(str.trim())) {return false;} else {return true;}}
阅读全文
0 0
- xml与map之间互转(java)
- xml报文与map之间的转换
- java xml 转 map / map 转 xml
- java Map转XML
- XML字符串与MAP格式互转
- xml字符串与map之间的相互转换
- JAXB: XML 与 Java之间的映射 (OXM)
- java中 数组 list map之间的互转
- 使用XStream实现Java对象与XML之间的快速互转
- java对象与xml 之间相互转换
- java xml转map map转xml 带属性
- java--09--对象与JSON与Map之间的转换
- xml-xml与java对象之间的转换(jaxb)
- Java 中 Map与JavaBean之间的相互转化
- Java 中 Map与JavaBean之间的相互转化
- Java 中 Map与JavaBean之间的相互转化
- java注解实现map与bean之间的转换
- XStream xml与javabean之间的互转
- 50天iOS挑战(Swift)
- HDU 2199 Can you solve this equation?
- python实现SMTP客户端
- 嫌Word转换太麻烦!那是你没选对转换工具
- [RK3288][Android6.0] WiFi之网络时间定期同步更新
- xml与map之间互转(java)
- [转]详解C指针
- 补题: 1001. Add More Zero 1011KazaQ's Socks
- python多线程学习总结
- yii2 composer安装 高级应用
- 关于easyUI
- ssh整合(1)
- HomeAssistant--Sonoff接入BH1750FVI光线感应器
- luhn计算最后一位校验位(ICCID,银行卡号)