0

我正在尝试将字符串解析为日期,但由于某种原因,我的月份总是显示为 1...这是一个失败的测试,向您展示我的意思:

@Test
public void shouldConvertStringToDate() {
    String date1 = "2012-06-28 23:01:54";
    DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern("YYYY-MM-DD HH:mm:ss");
    LocalDate date = dateTimeFormatter.parseLocalDate(date1);
    Assert.assertEquals(2012, date.getYear());
    Assert.assertEquals(6, date.getMonthOfYear()); //actual is 1... ???
    Assert.assertEquals(28, date.getDayOfMonth());
}

知道发生了什么吗?

谢谢!

4

1 回答 1

2

天数不应为dd小写DD
D- 一年
d中的一天 - 一个月中的一天
所以你的格式化程序应该是

DateTimeFormat.forPattern("YYYY-MM-dd HH:mm:ss");
于 2012-09-14T10:28:34.790 回答