我有一个来自我们的REST服务的JSON:
[
"{\"category_name\":[\"Industry Components\"],\"categoryId\":[1]}",
"{\"category_name\":[\"Business Components\"],\"categoryId\":[2]}",
"{\"category_name\":[\"Utilities\"],\"categoryId\":[3]}",
"{\"category_name\":[\"Tools\"],\"categoryId\":[4]}
]
Run Code Online (Sandbox Code Playgroud)
我正在使用java-json.jar来解析这个JSON,这是我试图传递JSON字符串的简单片段:
JSONObject jsonObject = new JSONObject(jsonStr);
Run Code Online (Sandbox Code Playgroud)
但我得到以下异常:
org.json.JSONException: A JSONObject text must begin with '{' at 1 [character 2 line 1]
Run Code Online (Sandbox Code Playgroud)
首先我假设它是因为[和]JSON中的字符,我试图替换如下:
String replacedStr = jsonStr.replaceAll("\\[", "").replaceAll("\\]", "")
Run Code Online (Sandbox Code Playgroud)
但即便如此,我也得到同样的例外.谁能指导我知道我做错了什么?
Sun*_*B N 14
JSON对象遵循以下结构:
{
"array": [
{
color: "red",
value: "#f00"
},
{
color: "green",
value: "#0f0"
}
]
}
Run Code Online (Sandbox Code Playgroud)
JSON数组遵循以下结构:
[
{ "firstName":"John" , "lastName":"Doe" },
{ "firstName":"Anna" , "lastName":"Smith" },
{ "firstName":"Peter" , "lastName": "Jones" }
]
Run Code Online (Sandbox Code Playgroud)