您的位置:首页 > 其它

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包,这个在网上很好找到对应的资源,可以自己下载。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息