我有一个对象
class JsonOutput {
@JsonProperty("blah")
private String blah;
@JsonProperty("blah_blah")
private String blahBlah;
@JsonProperty("int_val")
private String intVal;
JsonOutput(String b, String bb, Integer i) {
this.blah = b;
this.blahBlah = bb;
this.intVal = i;
}
// getters
}
我用于在字符串中创建 json(使用杰克逊):
JsonOutput jsonOutput = new JsonOutput("text1", "text2", 20);
ObjectMapper mapper = new ObjectMapper();
String jsonInfo = mapper.writeValueAsString(jsonOutput);
jsonInfo 似乎还可以:{"blah":"text1","blah_blah":"text2","int_val":20}
但是当使用 spark 将其写入 csv 时,我得到每个字符串的双引号:
"{""blah"":""text1"",""blah_blah"":""text2"",""int_val"":20}"
似乎它正在逃逸"
。
我试图改变option("escape", "\\")
但输出没有改变。如果我更改option("quote", "\\")
,则输出会更改:
\{"blah":"text1","blah_blah":"text2","int_val":20}\
在我看来,这就像火花库中的一个错误:它正在使用引号进行转义。有没有人遇到过这个问题?