我想添加 1 个月至今,但它只添加了 4 周。
我试过这样
2012-05-04 + DateTimeUtilities.ONEMONTH = 2012-05-31
我得到的结果是 2012-05-31
我想添加一个完整的月份(30 天或 31 天,或者当月份是闰年 29 或 28 时)。
我想添加 1 个月至今,但它只添加了 4 周。
我试过这样
2012-05-04 + DateTimeUtilities.ONEMONTH = 2012-05-31
我得到的结果是 2012-05-31
我想添加一个完整的月份(30 天或 31 天,或者当月份是闰年 29 或 28 时)。
尝试将您的时间转换为日历对象,然后增加月份字段:
Calendar cal = Calendar.getInstance();
cal.setTime(new Date(timeInMillis));
cal.set(Calendar.MONTH, cal.get(Calendar.MONTH)+1);
long newTimeInMillis = cal.getTime().getTime();
您可能需要检查从 12 月到 1 月的溢出并增加年份。
API 文档确认 DateTimeUtilities.ONEMONTH 是四个星期,所以你得到的是你应该期待的。