如何使用 Gson 库解析这个不正确的(我认为)JSON。
{
......
"phones":{
"155193":"5556739386",
"155194":"5555301828"
}
......
}
字符串155193
和155194
是来自服务器的随机值。
需要使用HashMap
或任何想法?
答案 0 :(得分:1)
对于这种情况,它帮助了我:
public class ServerResponse {
...
private HashMap<String, String> phones;
...
}
答案 1 :(得分:1)
你的答案肯定是正确的(不要忘记将其标记为已接受!),但我有两个笔记,我以答案的形式。
首先,如果你也可以这样使用:
public class ServerResponse {
...
private Object phones;
...
}
你会收到任何地图,当然在这种情况下你需要一个演员表。所以你的解决方案更好。但是,如果服务器向您发送了一个电话列表,它会起作用(当然,您的代码中会有一个类强制转换异常,而不是JSONParsingException
其次, JSON无效,如果查看this,您会看到已正确解析。这里不起作用的是,你不能按照POJO方法进行解析。一种方式就像你回答的那样,另一种可能性就是写一个适合你的适配器......一张地图。所以这不会是一件大事,让Gson像你一样处理这种情况会更好。