Java 使用JSON.org解析时出现JSON错误
您的json无效Java 使用JSON.org解析时出现JSON错误,java,json,parsing,Java,Json,Parsing,您的json无效 paramsArray、paramsObj、one、three和paramstr应该用双引号括起来(有效的JSON包含两个键和值) 尝试类似的JSON验证程序。您的JSON无效 paramsArray、paramsObj、one、three和paramstr应该用双引号括起来(有效的JSON包含两个键和值) 尝试类似的JSON验证程序。您的JSON无效 paramsArray、paramsObj、one、three和paramstr应该用双引号括起来(有效的JSON包含两个键和
paramsArray
、paramsObj
、one
、three
和paramstr
应该用双引号括起来(有效的JSON包含两个键和值)
尝试类似的JSON验证程序。您的JSON无效
paramsArray
、paramsObj
、one
、three
和paramstr
应该用双引号括起来(有效的JSON包含两个键和值)
尝试类似的JSON验证程序。您的JSON无效
paramsArray
、paramsObj
、one
、three
和paramstr
应该用双引号括起来(有效的JSON包含两个键和值)
尝试类似的JSON验证程序。您的JSON无效
paramsArray
、paramsObj
、one
、three
和paramstr
应该用双引号括起来(有效的JSON包含两个键和值)
尝试类似的JSON验证器
在双引号内使用单引号以增加可读性,如
在双引号内使用单引号以增加可读性,如
在双引号内使用单引号以增加可读性,如
在双引号内使用单引号以增加可读性,如…对象中的键值需要加引号。对象中的键值需要加引号。对象中的键值需要加引号。对象中的键值需要加引号。尽管某些解析器可能接受单引号,特别指出,作为字符串值的名称需要用双引号括起来。。尽管有些解析器可能接受单引号,但特别指出作为字符串值的名称需要用双引号括起来。。尽管有些解析器可能接受单引号,特别指出,作为字符串值的名称需要用双引号括起来。
“
”。尽管有些解析器可能接受单引号,但特别指出,作为字符串值的名称需要用双引号括起来。“
。
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException, ParseException {
String s = "{paramsArray: [\"first\", 100],"
+ "paramsObj: {one: \"two\", three: \"four\"},"
+ "paramsStr: \"some string\"}";
JSONParser parser = new JSONParser();
Object ob = parser.parse(s);
JSONObject obj = (JSONObject) ob;
System.out.println(obj.get("paramsStr"));
}
}
Error: Exception in thread "main" Unexpected character (p) at position 1.
at org.json.simple.parser.Yylex.yylex(Yylex.java:610)
at org.json.simple.parser.JSONParser.nextToken(JSONParser.java:269)
at org.json.simple.parser.JSONParser.parse(JSONParser.java:118)
at org.json.simple.parser.JSONParser.parse(JSONParser.java:81)
at org.json.simple.parser.JSONParser.parse(JSONParser.java:75)
at Main.main(Main.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120) `
String s = "{\"paramsArray\": [\"first\", 100],"
+ "\"paramsObj\": {\"one\": \"two\", \"three\": \"four\"},"
+ "\"paramsStr\": \"some string\"}";
"{ 'paramsArray': ['first', '100']," +
"'paramsObj': { 'one': 'two'," +
"'three': 'four'}," +
"'paramsStr': 'some string'}"