对不起我的英文,我无法像这样解析json
个对象:
{
"user": {
"id": 34,
"last_login": {
"date": "2015-07-30 11:22:34.000000",
"timezone_type": 3,
"timezone": "Europe/Oslo"
}
}
}
我不知道,为什么它不起作用。我需要解析last_login
,但我不能这样做
我的代码
JSONObject jsonTable = json.getJSONObject("user");
if(jsonTable.length() > 0) {
check = true;
ProfileDetalisObject pfDet = new ProfileDetalisObject();
pfDet.setId(jsonTable.getString(TAG_ID));
JSONObject date = jsonTable.getJSONObject("last_login");
if(date.length() > 0) {
Iterator<String> iteratorDate = date.keys();
while( iteratorDate.hasNext() ) {
String currentKeySensor = iteratorDate.next();
JSONObject objDate = date.optJSONObject(currentKeySensor);
if(objDate != null) {
pfDet.setDate(objDate.getString("date"));
pfDet.setTimezone_type(objDate.getString("timezone_type"));
pfDet.setTimezone(objDate.getString("timezone"));
}
}
}
我无法解析last_login
。
答案 0 :(得分:2)
last_login
是普通的json对象(又名字典),所以你不需要任何迭代器,只需直接到达键:
JSONObject date = jsonTable.getJSONObject("last_login");
pfDet.setDate(date.getString("date"));
pfDet.setTimezone_type(date.getString("timezone_type"));
pfDet.setTimezone(date.getString("timezone"));