GSON将每个对象(Date,Float,Integer)反序列化为字符串

时间:2015-02-13 12:46:11

标签: android json gson

我想反序列化字符串

{
  "foo":5,
  "bar":"03.10.01"
}

我想将它反序列化为只包含字符串的Map。 使用示例代码给我整数代替“5”和java.Util.Date而不是日期字符串。

Map<Object, Object> map = new HashMap<Object, Object>();
map = (Map<Object, Object>) gson.fromJson(new InputStreamReader(inputStream), map.getClass());

我不知道JSON会是什么,这就是我将其解析为Map的原因

@reactivemobile 这是真的,但如果JSON是这样的话:

正如我所说,我不知道JSON会是什么,它看起来像:

{
  "array": [
    {
      "eggs": 5,
      "bb": "03.10.01"
    }
  ],
  "foo": 5,
  "bar": "03.10.01"
}

使用Map创建它将创建包含ArrayList,foo,bar的Map。在ArrayList中将有LinkedTreeMap,它将包含“eggs”和“bb”。

所以你的答案是正确的,但不是在JSON可以具有动态结构的情况下。

1 个答案:

答案 0 :(得分:0)

使用

Map<String, String> map 

强制值为字符串