在json字段之前和之后有2个引号(bug spark?)

时间:2016-01-12 13:26:25

标签: java json spark-csv

我有一个对象

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(使用jackson):

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}\

在我看来,这就像火花库中的一个错误:它正在用引号进行转义。有人遇到过这个问题吗?

0 个答案:

没有答案