1

这个问题很简单。我想要的是创建一个日历并使用以下属性进行设置:日:17 月:10(十月)年:1989

但是日历没有正确设置 MONTH。

这是代码:

Calendar fecha = new GregorianCalendar();
fecha.set(Calendar.DAY_OF_YEAR, 17);
fecha.set(Calendar.MONTH, Calendar.OCTOBER);
System.out.println(new SimpleDateFormat("dd/MM/yyyy").format(fecha.getTime()));

我得到的是:17/01/2013 ------------>这个月不是十月

这有什么问题?提前致谢!

4

5 回答 5

4

如果您要设置月份和年份,那么当您设置日期时,请使用DAY_OF_MONTH而不是DAY_OF_YEAR.

于 2013-03-15T19:50:45.070 回答
3
fecha.set(Calendar.DAY_OF_YEAR, 17);

属于一月

你需要设置Calendar.DATE

于 2013-03-15T19:51:03.640 回答
3

代替:

Calendar fecha = new GregorianCalendar();
fecha.set(Calendar.DAY_OF_MONTH, 17);
fecha.set(Calendar.MONTH, Calendar.OCTOBER);
System.out.println(new SimpleDateFormat("dd/MM/yyyy").format(fecha.getTime()));
于 2013-03-15T19:52:03.167 回答
2

您需要使用 DAY_OF_MONTH 而不是 DAY_OF_YEAR

于 2013-03-15T19:50:56.497 回答
1

试试这个,效果很好,还可以用文字显示月份。

  `Calendar fecha = new GregorianCalendar();
    fecha.set(Calendar.DAY_OF_MONTH, 17);
    fecha.set(Calendar.MONTH, Calendar.OCTOBER);
    System.out.println(new SimpleDateFormat("dd/MMMM/yyyy").format(fecha.getTime()));`
于 2018-09-11T04:43:03.957 回答