2

我无法控制的我正在使用的服务(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”前缀,或者这里可能发生了其他事情?

4

1 回答 1

1

就像您说的那样,由于标签中的“u”前缀,它不是有效的 json。你可以在这里查看:http: //jsonlint.com/

所以 Gson 不能解析和映射到你的类。

尝试删除标签前的“u”,它会起作用。

于 2016-04-30T07:01:40.550 回答