解析“ YYYY-MM-dd HH:mm”时,SimpleDateFormat产生错误的日期时间

 

问题描述:

我正在尝试将StringYYYY-MM-dd HH:mm)解析为Date,但是日期却超出预期。

码:

Date newDate = null;
String dateTime = "2013-03-18 08:30";
SimpleDateFormat df = new SimpleDateFormat("YYYY-MM-dd HH:mm", Locale.ENGLISH);
df.setLenient(false);
try {
    newDate = df.parse(dateTime);
} catch (ParseException e) {
    throw new InvalidInputException("Invalid date input.");
}

当我从上面的代码中将返回的日期输入数据库时,我正确地获取了日期,但是时间始终是00:00。

ps.setDate(3, new java.sql.Date(app.getDate().getTime()));

 

第 1 个答案:

YYYY应该是yyyy

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.ENGLISH);

鉴于以下多态:public class Multiton { private static final Multiton[] instances = new Multiton[...]; private Mul ...