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