字符串到日期的转换给出了错误的日期

String to Date conversion giving wrong date

我有字符串日期:

"01/15/2015 12:00 AM" 

我想要一个 "dd/MM/yyyy' 'HH:mm:ss" 格式的日期对象。我怎样才能做到这一点?

我试过:

String datetime1 ="01/15/2015 12:00 AM"
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy HH:mm a");
Date datepicker1 = dateFormat.parse(datetime1);

但是这个 datepicker 的日期是 2016 年。我不知道为什么会这样。

改为:

DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy HH:mm a");
                                               ↑

你翻转了 MMdd..

我想这里发生的事情是 Java 认为你有 15 个月,将它添加到 2015 年的“1”日,所以你得到了 2016.. 你离实施不远了时光机:)