1

我有一个要求,例如计算两个日期之间的天数,并通过将周/月添加到日期来计算未来日期。我使用了 java.util.Calendar;和 java.util.Date。这些都没有给出准确的结果,它在夏令时问题上失败了。所以我决定使用 JODA 日历 API。我对 JODA API 很陌生。请任何人提供示例代码来计算以下要求。

1).noOfDays(String currDate, String tarDate) 2).addMonths(String date, int months) 3).addDays(String date, int days) 4).futureDate(String date,int week)

谢谢 Ganesh

4

1 回答 1

1

0) 要将字符串转换为日期,请使用
DateTimeFormatter
例如,如果您的日期看起来像"31/12/2012"

DateTimeFormatter dtf = DateTimeFormat.forPattern("dd/MM/yyyy");  
DateTime date = dtf.parseDateTime("31/12/2012");  

此类ISODateTimeFormat包含基本日期格式的格式化程序。
1) 要计算两个日期之间的天数,例如使用 Days #daysBetween方法

DateTime date1 = dtf.parseDateTime("31/12/2012");    
DateTime date2 = dtf.parseDateTime("15/11/2012");  
int daysbetween = Days.daysBetween(date1, date2);

2) 添加月份日期使用DateTime#plusMonths()

DateTime newDate = dtf.parseDateTime("31/12/2012").plusMonths(5);  

3)添加日期使用方法DateTime#plusDays()
4)添加星期日期使用方法如果您使用没有时间的日期,DateTime#plusWeeks()
您也可以使用LocalDate类而不是DateTime

于 2012-12-12T10:54:27.147 回答