小编典典

日历月份错误

java

我尝试使用日历设置若干年后的简单日期:

字符串日期是此方法的参数。

     SimpleDateFormat format = new SimpleDateFormat("dd.mm.yyyy");

    String[] DateTimeParts = date.split(" ");
    String dt = DateTimeParts[0];
    String[] dateParts = dt.split("-");
    int d = Integer.parseInt(dateParts[2]);


    int y = Integer.parseInt(dateParts[0]);
    int m = Integer.parseInt(dateParts[1]);




    Calendar calendar = Calendar.getInstance(); 
    calendar.set(y, m-1, d);
    calendar.add(Calendar.YEAR, years);


    return format.format(calendar.getTime());
}

我的问题是,否则日期返回还可以,但是月份数字完全错误,并且每次运行时看起来都越来越大!我想念的是什么?


阅读 346

收藏
2020-11-26

共2个答案

小编典典

当您应该使用大写字母“ M”时,则使用小写的“ m”表示月份,即

SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy");

小写的“ m”用于格式化分钟- 有关更多详细信息,请参见Java API for
SimpleDateFormat

2020-11-26
小编典典

测试

2020-12-13