解析Map为XML
2015-04-28 13:27
134 查看
package Test;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;
import java.util.Map.Entry;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
public class demo10 {
public static void main(String[] args) {
TreeMap<String, Object> requestHeaderMap = new TreeMap<String, Object>();
TreeMap<String, Object> controlMap = new TreeMap<String, Object>();
TreeMap<String, Object> map = new TreeMap<String, Object>();
TreeMap<String, Object> mapHead = new TreeMap<String, Object>();
String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS")
.format(new Date());
map.put("_TransactionId", "_TransactionId");
requestHeaderMap.put("version", "1.0");
map.put("requestHeader", requestHeaderMap);
controlMap.put("requesterName", "MGMT");
map.put("control", controlMap);
mapHead.put("Head", map);
Document document = DocumentHelper.createDocument();
document.setXMLEncoding("UTF-8");
Element bodyElem = document.addElement("Message");
parseToXML(mapHead,bodyElem);
String xml = document.asXML();
System.out.println(xml);
}
private static void parseToXML(TreeMap<String, Object> map, Element bodyElem) {
Iterator records = map.entrySet().iterator();
while (records.hasNext()) {
Map.Entry entry = (Map.Entry) records.next();
if (entry.getValue().getClass().equals(TreeMap.class)) {// 子目录
bodyElem = bodyElem.addElement((String) entry.getKey());
parseToXML((TreeMap<String, Object>) entry.getValue(), bodyElem);
} else {
bodyElem.addElement((String) entry.getKey()).addText(
(String) entry.getValue());
}
}
}
}
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;
import java.util.Map.Entry;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
public class demo10 {
public static void main(String[] args) {
TreeMap<String, Object> requestHeaderMap = new TreeMap<String, Object>();
TreeMap<String, Object> controlMap = new TreeMap<String, Object>();
TreeMap<String, Object> map = new TreeMap<String, Object>();
TreeMap<String, Object> mapHead = new TreeMap<String, Object>();
String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS")
.format(new Date());
map.put("_TransactionId", "_TransactionId");
requestHeaderMap.put("version", "1.0");
map.put("requestHeader", requestHeaderMap);
controlMap.put("requesterName", "MGMT");
map.put("control", controlMap);
mapHead.put("Head", map);
Document document = DocumentHelper.createDocument();
document.setXMLEncoding("UTF-8");
Element bodyElem = document.addElement("Message");
parseToXML(mapHead,bodyElem);
String xml = document.asXML();
System.out.println(xml);
}
private static void parseToXML(TreeMap<String, Object> map, Element bodyElem) {
Iterator records = map.entrySet().iterator();
while (records.hasNext()) {
Map.Entry entry = (Map.Entry) records.next();
if (entry.getValue().getClass().equals(TreeMap.class)) {// 子目录
bodyElem = bodyElem.addElement((String) entry.getKey());
parseToXML((TreeMap<String, Object>) entry.getValue(), bodyElem);
} else {
bodyElem.addElement((String) entry.getKey()).addText(
(String) entry.getValue());
}
}
}
}
相关文章推荐
- java使用jdom架包解析xml字符串dom原理并保存map对象
- 解析xml 转换map
- Mybatis源码-XXXmapper.xml中的resultMap标签解析过程
- 解析格式为纯字符串的MAP封装起来的XML:(2)
- 解析微信返回的xml到map中
- xml String字符串解析 map转xml
- xml,json,map,java对象互相转换解析
- 解析字符串XML成map
- 根据node属性解析xml 并存入map中
- 数据格式转换,数据解析,实体类、json、map、xml
- 从请求中获取xml内容并解析成map
- 将xml解析成map
- XML解析与Map、Json转换,Dom4j-工具类
- 利用dom4j解析 Google sitemap.xml
- xml递归解析成Map
- Xml 转 Map 解析工具类
- **解析各类xml为map工具类**
- Dom4j解析XML文本,遍历指定节点下的节点内容和属性,并存入List<Map<String,Object>
- java解析xml转为Map
- Java XML解析,,Node直接转为对象。考虑了一般的类,简单类型,数组,还未考虑List,Map