相关疑难解决方法(0)

如何将XML转换为java.util.Map,反之亦然

我正在搜索一个轻量级API(最好是单个类)来转换

Map<String,String> map = new HashMap<String,String();
Run Code Online (Sandbox Code Playgroud)

到xml,反之亦然,将XML转换回Map.

例:

Map<String,String> map = new HashMap<String,String();
map.put("name","chris");
map.put("island","faranga");

MagicAPI.toXML(map,"root");
Run Code Online (Sandbox Code Playgroud)

结果:

<root>
  <name>chris</chris>
  <island>faranga</island>
</root>
Run Code Online (Sandbox Code Playgroud)

然后回来:

Map<String,String> map = MagicAPI.fromXML("...");
Run Code Online (Sandbox Code Playgroud)

我不想使用JAXBJSON转换API.它不需要处理嵌套的地图或属性或其他任何东西,只是这个简单的情况.有什么建议?


编辑:我创建了一个工作复制和粘贴示例.感谢fvuMichal Bernhard.

下载最新的XStream框架,'仅核心'就足够了.

Map<String,Object> map = new HashMap<String,Object>();
map.put("name","chris");
map.put("island","faranga");

// convert to XML
XStream xStream = new XStream(new DomDriver());
xStream.alias("map", java.util.Map.class);
String xml = xStream.toXML(map);

// from XML, convert back to map
Map<String,Object> map2 = (Map<String,Object>) xStream.fromXML(xml);
Run Code Online (Sandbox Code Playgroud)

不需要转换器或任何其他东西.只需xstream-xyzjar即可.

java xml

65
推荐指数
5
解决办法
13万
查看次数

标签 统计

java ×1

xml ×1