我正在使用的服务(SendBird),我无法控制,它以以下形式返回数据(字符串):
"{u'some_key': u'some_value', u'some_other_key': u'some_other_value'}"
有些搜索显示某些版本的Python会在字符串前面加上'u'字符,所以我假设这就是这里发生的事情。 但是,当我做标准时:
Gson gson = new Gson();
SomeClass object = gson.fromJson(dataString, SomeClass.class);
,其中
dataString = "{u'some_key': u'some_value', u'some_other_key': u'some_other_value'}"
它没有正确地将值映射到我的类(是的,我已经仔细检查了序列化名称是否与java对象属性匹配)。 Gson不能正确处理'u'前缀或者其他可能在这里发生什么吗?
答案 0 :(得分:1)
就像你所说的不是一个有效的json,因为" u"标签中的前缀。您可以在此处查看:http://jsonlint.com/
所以Gson无法解析并映射到你的班级。
尝试删除" u"在标签之前它会起作用。