作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在从属性文件加载一个值,然后将其传递给 gson 方法以将其转换为最终的 json 对象。但是,来自属性文件的值有双引号,gson 正在为其输出添加“\”。我已经扫描了整个网络,但无法找到解决方案
属性文件包含
0110= This is a test for the renewal and the "Renewal no:"
这是我的代码
public String toJSONString(Object object) {
GsonBuilder gsonBuilder = new GsonBuilder();
Gson gson = gsonBuilder.create();
//Note object here is the value from the property file
return gson.toJson(object);
}
这产生
"{ResponseCode:0110,ResponseText:This is a test for the renewal and the \"Renewal no:\"}"
我不确定在输出中,为什么它在文字周围添加或包装\或者我们在属性文件值中的什么地方有双引号?
最佳答案
根据对您问题的评论,object
参数实际上引用了具有值的 Java String
{ResponseCode:0110,ResponseText:This is a test for the renewal and the "Renewal no:"}
我不能说为什么,但这就是您的 String
包含的内容。
String
是一种特殊类型,Gson
将其解释为 JSON 字符串。由于 "
是一个必须在 JSON 字符串中转义的特殊字符,这就是 Gson
所做的并生成 JSON 字符串。
"{ResponseCode:0110,ResponseText:This is a test for the renewal and the \"Renewal no:\"}"
关于java - 如何从 gson 生成的字符串中转义或删除 "\"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37954595/
我是一名优秀的程序员,十分优秀!