dateString:2016-08-29T11:39:52.2133065
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
try {
Date date = dateFormat.parse(dateString);
return dateFormat.format(date);
} catch (ParseException e) {
Log.e(TAG, "Unable to parse date " + e);
}
字符串需要转换为2016-08-29 11:39
,但我得到解析异常。
答案 0 :(得分:1)
传递给日期格式化程序的格式应该与要解析的字符串的格式相对应。在" 2016-08-29T11:39:52.2133065"日期格式化程序应为:
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm");
您还需要一个新的格式化程序,您可以在其中指定输出格式:
SimpleDateFormat newFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
像这样使用它们:
Date date = dateFormat.parse(dateString);
return newFormat.format(date);
答案 1 :(得分:0)
试试这个,删除dateString中的 T ,
String dateString ="2016-08-29T11:39:52.2133065";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
try {
Date date = dateFormat.parse(dateString);
dateFormat.format(date);
Log.e("Log",""+dateFormat.format(date));
} catch (ParseException e) {
Log.e("GridActivity", "Unable to parse date " + e);
}