如何在Jackson的ObjectMapper中使用转义字符串

时间:2016-11-25 11:23:30

标签: java json jackson escaping

我想从给定字符串生成JSON字符串,但在单引号字符之前使用单反斜杠字符,就像这样\'。例如,我有字符串“你是'伟大的'',并希望像这样输出”你是'伟大的''。我正在使用 jackson object mapper 类,以下是代码:

    String str = "you are the 'great'";
    String jsonStr = "";
    System.out.println(str);//Line-1
    ObjectMapper mapper = new ObjectMapper();
    try
    {
        jsonStr = mapper.writeValueAsString(str);
    }
    catch (IOException e)
    {
        e.printStackTrace();
    }
    System.out.println(jsonStr);//Line-2

基于此,我已经执行了以下测试用例:

  1. 输入字符串:"you are the \'great\'"

    第1行的输出:you are the 'great'

    第2行的输出:you are the 'great'

  2. 输入字符串:"you are the \\'great\\'"

    第1行的输出:you are the \'great\'

    第2行的输出:you are the \\'great\\'

  3. 但我无法获得预期的输出。请提供一些解决方案。

    注意:这里解释一下我把字符串作为输入的问题,但实际上我在对象中有一些字符串属性,并且想要该对象的Json字符串。

0 个答案:

没有答案