XML和Map集合之间的相互转换
2016-05-09 20:54
459 查看
将XML文档转换为Map集合比较简单,方式也比较多,下面这种方式是DOM4J的方式:
Map<String, String> map=new HashMap<String,String>();
try {
InputStream is = new FileInputStream(new File("要读取的XML文档或者是文本"));
SAXReader sax=new SAXReader(); //创建解析器
Document doc=sax.read(is); //创建对应的Document对象
Element root=doc.getRootElement(); //获取XML文档的根节点对象
List<Element> list = root.elements();
//获取根节点下的所有的子节点
for (Element ele : list) { //遍历根节点下的所有子节点并将其放入MAP对象中
map.put(ele.getName(), ele.getText());
}
is.close();
} catch (Exception e) {
e.printStackTrace();
}
将一个对象转换为对应的XML文档:
public static String textToXml(Object data){
XStream xstream=new XStream();
//创建XStream对象
xstream.alias("xml", data.getClass());
//设置根节点为“xml” ,也可以设置为"root",这个根据需要
String xml = xstream.toXML(data);
//将对象转换为xml格式的字符串
return xml;
}
假如对象的属性为:name,age,sex
转换为XML格式的字符串之后为:
<xml>
<name>西门吹雪</name>
<age>21</age>
<sex>男</sex>
</xml>
不过呢使用上述的这种方式进行转化的时候分别需要DOM4J的jar包和XStream的jar包,这个在网上很好找到对应的资源,可以自己下载。
Map<String, String> map=new HashMap<String,String>();
try {
InputStream is = new FileInputStream(new File("要读取的XML文档或者是文本"));
SAXReader sax=new SAXReader(); //创建解析器
Document doc=sax.read(is); //创建对应的Document对象
Element root=doc.getRootElement(); //获取XML文档的根节点对象
List<Element> list = root.elements();
//获取根节点下的所有的子节点
for (Element ele : list) { //遍历根节点下的所有子节点并将其放入MAP对象中
map.put(ele.getName(), ele.getText());
}
is.close();
} catch (Exception e) {
e.printStackTrace();
}
将一个对象转换为对应的XML文档:
public static String textToXml(Object data){
XStream xstream=new XStream();
//创建XStream对象
xstream.alias("xml", data.getClass());
//设置根节点为“xml” ,也可以设置为"root",这个根据需要
String xml = xstream.toXML(data);
//将对象转换为xml格式的字符串
return xml;
}
假如对象的属性为:name,age,sex
转换为XML格式的字符串之后为:
<xml>
<name>西门吹雪</name>
<age>21</age>
<sex>男</sex>
</xml>
不过呢使用上述的这种方式进行转化的时候分别需要DOM4J的jar包和XStream的jar包,这个在网上很好找到对应的资源,可以自己下载。
相关文章推荐
- XStream使用方法总结附实例代码
- 使用asx3m与xstream配合解决flex与java利用httpservice传递xml数据问题
- java使用dom4j操作xml示例代码
- java基于dom4j包实现对XML解析的方法
- 深入dom4j使用selectSingleNode方法报错分析
- dom4j从jar包中读取xml文件的方法
- java dom4j解析xml用到的几个方法
- java使用xpath和dom4j解析xml
- 在java中使用dom4j解析xml(示例代码)
- XStream解析复杂XML
- SpringMVC XStream 返回Xml时完美支持List,Map输出
- Dom4j的使用(全而好的文章)
- dom4j读写xml文件
- 解决dom4j解析xml文件时访问DTD文件问题
- 学习:Dom4j
- dom4j的快速入门——冰云编写
- DOM4J合并多个xml文件到一个Document
- XStream处理既有属性又有值的xml节点
- dom4j创建及解析XML文件
- JAXB 解决XML与JavaBean的互换