Questions tagged «jodatime»

Joda-Time提供了Java日期和时间类的质量替代。该设计允许使用多个日历系统,同时仍提供一个简单的API。

19
Java中两个日期之间的天数差异?
我需要找到两个日期之间的天数:一个是来自报表,另一个是当前日期。我的片段: int age=calculateDifference(agingDate, today); 这calculateDifference是一个私有方法,agingDate并且today是Date对象,仅供您说明。我关注了Java论坛中的两篇文章Thread 1 / Thread 2。 它在独立程序中可以正常工作,尽管当我将其包含在逻辑中以从报告中读取时,我会在值上获得不同寻常的区别。 为什么会发生,如何解决? 编辑: 与实际天数相比,我得到的天数更多。 public static int calculateDifference(Date a, Date b) { int tempDifference = 0; int difference = 0; Calendar earlier = Calendar.getInstance(); Calendar later = Calendar.getInstance(); if (a.compareTo(b) < 0) { earlier.setTime(a); later.setTime(b); } else { earlier.setTime(b); later.setTime(a); } …

3
使用Joda日期和时间API解析多种格式
我正在使用Joda解析包含日期/时间的第三方日志文件。日期/时间采用两种不同格式之一,具体取决于我正在解析的日志文件的使用期限。 目前,我有这样的代码: try { return DateTimeFormat.forPattern("yyyy/MM/dd HH:mm:ss").parseDateTime(datePart); } catch (IllegalArgumentException e) { return DateTimeFormat.forPattern("E, MMM dd, yyyy HH:mm").parseDateTime(datePart); } 这有效,但违反了有效Java 2nd Edition中Joshua Bloch的建议(条款57:仅在特殊情况下使用例外)。由于日志文件中错误的日期/时间,这也使得很难确定是否发生IllegalArgumentException。 您能提出一种不会滥用异常的更好的方法吗?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.