我遇到了JSONObjects和JSONArray的几个问题 我想解析这个json文件:
[{
"SourceFile": "AndresIniesta.flv",
"ExifTool": {
"ExifToolVersion": 8.22
},
"System": {
"FileName": "AndresIniesta.flv",
(...)
},
"File": {
"FileType": "FLV",
"MIMEType": "video/x-flv"
},
"Flash": {
"Duration": "04:09",
"Starttime": 0,
"Totalduration": 249.36,
"ImageWidth": 320,
(...)
},
"Composite": {
"ImageSize": "320x240"
}
}]
但不是全部,只是Flash领域 整个文件是JSONArray,但只有1个元素。我让Flash填满了这段代码:
JsonMappingException,IOException {
String a = new String();
InputStream = this.getClass()。getClassLoader()。的getResourceAsStream( “a.json”);
String jsonTxt = IOUtils.toString(is);
JSONArray json =(JSONArray)JSONSerializer.toJSON(jsonTxt);
JSONObject flash = json.getJSONObject(0);System.out.print(“flash - >”+ flash.getString(“Flash”));
但我不知道如何访问Flash fild,lis Duration,Starttime等等。
当我这样尝试时:
String canseekontime = flash.getString( “Canseekontime”);
int starttime = flash.getInt( “开始时间”);
Double duration = flash.getDouble(“Duration”);
我收到此错误:
net.sf.json.JSONException: JSONObject["Duration"]
未找到。
任何帮助??
提前致谢
答案 0 :(得分:2)
你的意思是
JSONObject flash = json.getJSONObject(0);
JSONObject Flash = flash.getJSONObject("Flash");
int starttime = Flash.getInt("Starttime");