小编典典

JSON自动添加反斜杠

java

我试图使用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());

任何帮助表示赞赏。


阅读 867

收藏
2020-11-30

共1个答案

小编典典

您已经将其转换为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));
2020-11-30