我正在获取日期并尝试将它们解析为更具可读性的日期,但我不断收到解析错误,格式化对我来说是正确的,但它不起作用
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'");
DateFormat df2 = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date1 = df.parse(purchase.getRedeem_at());
String readableDate = df2.format(date1);
b.append(readableDate);
} catch (ParseException e) {
e.printStackTrace();
}
我尝试解析的示例字符串是
2014-08-12T02:30:00Z
答案 0 :(得分:2)
您错过了第一个格式字符串中的秒部分。
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
// ^
答案 1 :(得分:2)
joda将parse this format开箱即用:
DateTimeFormatter fmt = ISODateTimeFormat.dateTimeNoMillis();
DateTime ourDate = fmt.parseDateTime(jdkDate);
如果您还有其他问题,请发表评论。
答案 2 :(得分:1)
你应该添加“ss”
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");