java - JSON自动添加反斜杠

标签 java android json

我正在尝试使用 Gson 将 java 对象转换为 json。但是当我尝试打印它时,我得到了这个 JSON

{"user":"{\"email\":\"abc@gmail.com\",\"lastName\":\"Las\",\"name\":\"amy\",\"password\":\"qwe123\",\"phone\":\"8901245244\"}"}

我试过了

s.replace("\\"", "\"") but neither it helps nor its a good approach.

此外,我还浏览了各种链接,但答案不明确。

这是我的用户类 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());

感谢任何帮助。

最佳答案

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

关于java - JSON自动添加反斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43161385/

相关文章:

java - 如何同时解析 JSONObject 和 JSONArray

java - ZipEntry.STORED 对于已经压缩的文件?

java - List.forEach 是用 Java 排序的吗?

java - 从头开始的链表类与默认链表类?

java - 由于包含在布局中的 NullPointerException 而获取 "Unfortunately, my_app has stopped."

android - 在不使用 setSpacing 的情况下防止图库图像重叠

android - 由于意外异常,命令未成功执行。请检查输出窗口以获取更多信息

json - 学位程度符号

java - 如何在 Java 中创建匹配正则表达式的字符串数组列表?

json - 如何将 JSON 输出提取到数据框?