Finding difference of days from start and end using joda?
本问题已经有最佳答案,请猛点这里访问。
我想从开始日期和结束日期知道有多少天。从我的JSON响应中,我可以得到以下字符串:
1 2 |
我将如何使用Joda计算并返回正确的天数(因此:numOfDays=endDate-startDate)??
1 2 3 4 5 6 7 8 9 | public int getNumberOfDays(String startDate, String endDate) { String pattern ="EEE, dd MMM yyyy HH:mm:ss +xxxx"; ..... // quick test on startDate DateTime dateTime = DateTime.parse(startDate, DateTimeFormat.forPattern(pattern)); System.out.println("The day should be 10 but it yields 9 -->" + dateTime.getDayOfMonth()); } |
Joda图书馆的使用日课程
1 2 | Days days=Days.daysBetween(startDate.toLocalDate(), endDate.toLocalDate()).getDays(); int noOfDays=days.getDays(); |
作为替代,我们还可以使用Java 8日期和时间API。
1 2 3 4 5 6 7 8 9 10 11 12 13 | public void days_between_two_dates_in_java_with_java8 () { LocalDate startDate = LocalDate.now().minusDays(1); LocalDate endDate = LocalDate.now(); long days = Period.between(startDate, endDate).getDays(); // or long days2 = ChronoUnit.DAYS.between(startDate, endDate); } |