我使用org.json将JSON字符串解析为JSON对象,我在JSON对象中有一个字段'expirationDate',我希望它被解析为java.util.Date,但JSONObject类没有getDate()方法。当我使用getString()方法时,我得到一个异常,如果我使用get()方法然后调用toString()方法,我会得到一个空指针异常。 我正在从mongodb获取JSON。 那么,我如何从JSONObject获取java.util.Date?
我的代码:
JSONArray jUsage = jsonObj.getJSONArray("attribute");
for(int i=0;i<jUsage.length();i++){
JSONObject eachUsage = jUsage.getJSONObject(i);
String aa = eachUsage.get("expirationDate").toString();
}
我的JSON:
"attribute": [
{
"expirationDate": {
"$date": "2013-07-09T08:58:57.517Z"
}
}
],
答案 0 :(得分:0)
从“$ date”中删除“$”。此外,我建议更改“dateInUTC”之类的名称“date”,以确保org.json不会干扰此过程。
随后,将值检索为纯字符串。接下来,在java端,您需要使用SimpleDateFormat或类似JODA的东西来解析java.util.Date中的字符串。
这可以帮助您更好地了解: