单引号中的JSON数据

时间:2016-07-25 09:08:47

标签: java json

我在JSON格式中有一个到期日期,我想在字符串变量中得到这个到期日期,那我该怎么办?     公共类ExpiryDate {

    public String getExpiryDate() throws ParseException, IOException{

        String expiryDateString = "{'expire_on':'Aug 05, 2016'}";

        JSONParser jsonParser = new JSONParser();

        Object obj = jsonParser.parse(expiryDateString);

        JSONObject jsonObject = (JSONObject) obj;

        System.out.println(jsonObject);

        return "";
    }

}

我正在传递这个JSON数据但是在Object create line我得到了这个异常

Unexpected character (') at position 1.
    at org.json.simple.parser.Yylex.yylex(Unknown Source)
    at org.json.simple.parser.JSONParser.nextToken(Unknown Source)
    at org.json.simple.parser.JSONParser.parse(Unknown Source)
    at org.json.simple.parser.JSONParser.parse(Unknown Source)
    at org.json.simple.parser.JSONParser.parse(Unknown Source)
    at onbording.ExpiryDate.getExpiryDate(ExpiryDate.java:25)
    at onbording.Sendmail.handleRequest(Sendmail.java:57)
    at example.sendmailTest.testsendemail(sendmailTest.java:44)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

2 个答案:

答案 0 :(得分:1)

我不知道API,但从它的外观来看,你需要逃避你的'人物......

通过快速谷歌搜索,我发现了这个:http://www.programcreek.com/java-api-examples/org.json.simple.parser.JSONParser

链接中的代码基本上告诉你在你的String中使用\“而不是',你的JSONParser应该理解它。希望这会有所帮助。

答案 1 :(得分:1)

You can't use single quotes

您可能正在使用Java。我建议你使用JSONObject

rcParams['image.interpolation']='none'

通常,比手动创建JSON字符串更好的做法是处理JSON。

另一种选择是使用转义双引号。

JSONObject jsonObject = new JSONObject();
jsonObject.put("expire_on", "Aug 05, 2016");
String expiryDateString = jsonObject.toString();