Android gson.toJson()给出带有转义引号的结果(\“)

时间:2012-05-04 02:36:28

标签: java android gson

我使用Gson序列化我的对象,但结果包含许多' \"'应该是'"',如:

{"data":"{\"calldate\":\"2012-05-03 00:12:00\",\"id\":0,\"uid\":0,\"popdbid\":0
,\"mobilesqlid\":1336025277424,\"callstatus\":2,\"checkstatus\":0,\"resultstatus
\":0,\"sequence\":0,\"subbrandstatus\":0,\"subcategorystatus\":0,\"synstatus\":1
,\"targetstatus\":0,\"trackstatus\":0,\"isfrommobile\":0}","user":{"id":11,"ente
rprise_id":1}}

这是我用来序列化的代码:

GsonBuilder builder=new GsonBuilder();
builder.setDateFormat("yyyy-MM-dd mm:hh:ss");
builder.excludeFieldsWithoutExposeAnnotation();
Gson gson=builder.create();
String gsonString = gson.toJson(callDayPlanning);

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

正如@PhilippReichart所述,您的callDayPlanning包含(可能)一个名为String的{​​{1}}字段,其中包含一个Json字符串。这由json.parser.online.fr确认: enter image description here

将Json字符串作为另一个对象的有效负载并没有错,但它将被转义。但是,如果您希望data是另一个对象的序列化(其类名为data?),您必须将DayPlanning类型从data更改为您的自定义类。