【发布时间】:2016-08-26 11:28:21
【问题描述】:
这是我来自 mysql 服务器的 json 文件。
注意:/var/www/html/studyabroad/university.php 第 18 行中的数组到字符串转换
Array[{"code":"100654","name":"Alabama A & M University",
"type":"public","city":"Normal","state":"AL",
"logo_url":"http:\/\/www.logosurfer.com\/sites\/default\/files\/university-of-california-logo_0.png",
"percentage":"53"},
{"code":"100706","name":"University of Alabama in Huntsville",
"type":"public","city":"Huntsville","state":"AL",
"logo_url":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/b\/b2\/Ashford_University_Full_Color_Logo.png",
"percentage":"82"}]
我的解析代码是
JSONParser parser = new JSONParser();
try{
BufferedReader bfReader = new BufferedReader(new InputStreamReader(is));
bfReader.readLine();
StringBuilder builder = new StringBuilder();
String line = null;
while((line = bfReader.readLine())!= null){
builder.append(line).append("\n");
}
line = builder.toString();
Object obj = parser.parse(line);
return obj;
}catch(IOException ex){
ex.printStackTrace();
}catch(ParseException ex){
ex.printStackTrace();
}finally{
try{
is.close();
}catch (IOException ex){
//later handler it.
ex.printStackTrace();
}
}
在我的服务器端将结果转换为我使用的 json 格式
json_encode($data);
错误的原因是json数据的格式。 Array[{..},{..}] 而不是 [{...},{..}]。
有什么办法可以将json数据的格式从上面更改为
[{...}, {...}] 或者我如何解析给定的格式?
【问题讨论】:
-
请详细说明这个区别 [{..},{..}] 而不是 [{...},{..}]。
-
我认为他的意思是每次有一个 JSONArray 时,它都会在 [ ] 之前附加 Array