gpt4 book ai didi

带有 HashMap 的 Java XStream

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:30:19 25 4
gpt4 key购买 nike

我想使用 XStream 将 java 哈希转换为 json 哈希。我觉得这应该比看起来容易。我正在寻找的是一种制作方法:

Map<String, String> map = new HashMap<String, String>();
map.put("first", "value1");
map.put("second", "value2");

成为

{'first' : 'value1', 'second' : 'value2' }

我将其转换为一系列数组。

XStream xstream = new XStream(new JettisonMappedXmlDriver() {
public HierarchicalStreamWriter createWriter(Writer writer) {
return new JsonWriter(writer, JsonWriter.DROP_ROOT_MODE);
}
});

xstream.toXML(map);

变成

[["first", "value1"], ["second", "value2"]]

我觉得将 java 哈希转换为 json 哈希应该很简单。我错过了什么吗?

最佳答案

问题在于,XStream 的首要设计目的是将 Java 对象编码和解码为 XML,JSON 只是事后才想到的,它肯定具有最不优雅的支持。

技术问题是,由于 XStream 必须同时支持 XML 和 JSON 格式,因此 JSON map 表示受到影响,因为没有本地方法来表示 XML 中的类似 map 的结构。

关于带有 HashMap 的 Java XStream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8141021/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com