我目前使用当前的JSON格式创建java对象,如下所示:
{
"_id" : "45",
"longitude" : "-0.203247",
"latitude" : "51.497843",
"timeDateOfUsage" : [
"24/12/17 13:57:55",
"1",
"24/12/17 14:03:08",
"0",
"24/12/17 14:03:28",
"1",
"24/12/17 14:03:36",
"0",
"24/12/17 14:21:31", "0",
"24/12/17 14:21:40",
"1"
]
}
我现在正在尝试将对象列表从JSON转换为java对象。这就是我想要转换成java的东西:
{
"_id" : "3",
"longitude" : "3222",
"latitude" : "55",
"timeDateOfUsage" : [
"02/11/17 13:30:35",
"1",
"02/11/17 13:30:45",
"1",
"02/11/17 13:30:51",
"0"
]
}
{
"_id" : "45",
"longitude" : "-0.203247",
"latitude" : "51.497843",
"timeDateOfUsage" : [
"24/12/17 13:57:55",
"1",
"24/12/17 14:03:08",
"0",
"24/12/17 14:03:28",
"1",
"24/12/17 14:03:36",
"0",
"24/12/17 14:21:31",
"0",
"24/12/17 14:21:40",
"1"
]
}
但我似乎只是得到了第一个对象,而不是其他对象(在这种情况下,那里;共有2个对象)。我正在使用杰克逊图书馆。
ObjectMapper mapper = new ObjectMapper();
listofResponses.add( mapper.readValue(response,SensorResponse.class));
String output = "";
for(SensorResponse s : listofResponses){
output = output + s.toString();
}
Log.d("dbserver", output);
我不确定为什么我无法使用其他物品。而且我做listofResponses.add( mapper.readValue(response,SensorResponse.class));
,是否会自动将每个个体对象放入arraylist?
答案 0 :(得分:-1)
首先将字符串保存到文件中,如果适合您的话。否则使用不同的流媒体方法
无论如何,如果你把json放在像file.json这样的文件中,现在就做这个
JsonReader reader = Json.createReader(new FileReader("file.txt"));
JsonStructure jsonst = reader.read();
当然,如果您不想使用文件
,可以将FileReader替换为其他阅读器就是这样,现在你可以解析你的'jsonst'对象了。这是关于如何做到这一点的
https://docs.oracle.com/middleware/1221/wls/WLPRG/java-api-for-json-proc.htm#WLPRG1062