Java Android gson.toJson()给出带转义引号(\)的结果
我使用Gson序列化我的对象,但结果包含许多应为“”的“\”,如:Java Android gson.toJson()给出带转义引号(\)的结果,java,android,gson,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,\"subcategorys
{"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);
有什么建议吗?正如@PhilippReichart所说,您的callDayPlanning可能包含一个名为data的字符串字段,其中包含一个Json字符串。这一点可以通过以下方式确认:
将Json字符串作为另一个对象的有效负载并没有什么错,但它会被转义。但是,如果您希望该数据是另一个对象的序列化,其类可能名为DayPlanning?您必须将数据类型从字符串更改为自定义类。它看起来不像gson.toJosn返回给我的字符串。您是如何做到的创建此字符串?发布一些代码会有所帮助。GsonBuilder builder=new GsonBuilder;builder.setDateFormatyyyy-MM-dd MM:hh:ss;builder.excludeFieldswithout exposeannotation;Gson Gson=builder.create;string gsonString=Gson.toJsoncallDayPlanning;很抱歉,我正在学习此格式。如果可能,请发布您的对象类,因为当我检查示例对象类,然后检查其工作是否正常。这看起来就像callDayPlanning中的数据字段已经包含JSON字符串,而不是仍然需要序列化为JSON的对象图。