问题描述
您已经将其转换为JSON字符串,然后将其粘贴到JSON对象中,该对象会自动转义JSON字符串。尝试这样的事情:
User u=new User(name,lastName,email,phone,password);
Gson userGson=new GsonBuilder().create();
JSONObject params = new JSONObject();
params.put("user",user);
Log.e("in register", userGson.toJson(params));
解决方法
我试图使用Gson将Java对象转换为json。但是当我尝试打印出来时,我得到了这个JSON
{“ user”:“ {\” email \“:\” abc@gmail.com \“,\” lastName \“:\” Las \“,\” name
\“:\” amy \“,\” password \“:\” qwe123 \“,\”电话\“:\” 8901245244 \“}”}
我试过了
s.replace(“ \\”“,” \“”),但没有帮助,也不是一个好的方法。
此外,我经历了各种链接,但答案却模棱两可。
这是我的User类toString方法
public class User implements Serializable
{ ...
@Override
public String toString()
{ return "User{" +
"first_name:" + name+
",last_name:" + lastName+
",mobile:" + phone+
",email:" + email+
",password:" + password+
"}";
}
我猜它甚至没有调用此toString方法。
这是我如何转换为JSON
User u=new User(name,lastName,email,phone,password);
Gson userGson=new GsonBuilder().create();
String jo=userGson.toJson(u);
JSONObject params=new JSONObject();
params.put("user",jo);
Log.e("in register",params.toString());
任何帮助表示赞赏。