0

我是 Java 新手,我正在尝试使用以下代码获取昨天的日期:

    GregorianCalendar gc = new GregorianCalendar(2018,9,22);//<-Today
    gc.add(gc.DATE, -1);//<-Yesterday
    SimpleDateFormat dateFormatter = new SimpleDateFormat("DD-MMM-YYYY");
    System.out.println(dateFormatter.format(gc.getTime()));

我得到的输出是:

325-XI-2018

我究竟做错了什么?

4

2 回答 2

2

DD-MMM-YYYY 表示:

  • DD : 一年中的一天
  • MMM : 一年中的月份(月份:如果模式字母的数量为 3 或更多,则将月份解释为文本;否则,将其解释为数字。)
  • YYYY : 周年

如果要将日期显示为 22-09-2018,请使用dd-MM-yyyy.

请参阅https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html

于 2018-10-22T09:57:43.693 回答
0

DateTimeFormatter 类有很多不同的方式来显示日期和时间。查看 Oracle 文档: https ://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html了解更多信息和语法

于 2018-10-22T09:58:12.500 回答