问题描述
当您应该使用大写字母“ M”时,则使用小写的“ m”表示月份,即
SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy");
小写的“ m”用于格式化分钟- 有关更多详细信息,请参见Java API forSimpleDateFormat。
测试
解决方法
我尝试使用日历设置若干年后的简单日期:
字符串日期是此方法的参数。
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());
}
我的问题是,否则日期返回还可以,但是月份数字完全错误,并且每次运行时看起来都越来越大!我想念的是什么?