Tag: jodatime

通过hibernate来保持Joda时间的DateTime

我在我的Play应用程序中使用Jodatime,但目前不得不做一堆来回转换为java.util.Date和java.sql.Time 。 由于jodatime包含在Play分配中,所以我想可能有更好的方法来做到这一点。 有没有什么办法可以使我的模型字段DateTime s而不是java.util.Date和java.sql.Time所以转换是自动完成的? 还有另外一种精简的方法吗?

由于时区偏移转换,如何处理jodatime非法即时

我想在今天凌晨2点设置joda DateTime (请参阅下面的示例代码)。 但是我得到这个例外: Exception in thread "main" org.joda.time.IllegalFieldValueException: Value 2 for hourOfDay is not supported: Illegal instant due to time zone offset transition: 2011-03-27T02:52:05.239 (Europe/Prague) at org.joda.time.chrono.ZonedChronology$ZonedDateTimeField.set(ZonedChronology.java:469) at org.joda.time.MutableDateTime.setHourOfDay(MutableDateTime.java:702) 上面的句柄exception的正确方法是什么,或者在特定的时刻创buildDateTime ? 示例代码: MutableDateTime now = new MutableDateTime(); now.setHourOfDay(2); now.setMinuteOfHour(0); now.setSecondOfMinute(0); now.setMillisOfSecond(0); DateTime myDate = now.toDateTime(); 谢谢。

如何把Joda Localdate转换成Joda DateTime?

我正在尝试简单地将时区信息添加到LocalDate中,然后再执行一些计算。 LocalDate来自使用ObjectLab LocalDateCalculator添加date到现有的DateTime,但该方法需要返回一个修改的ReadableInstant形成一个间隔,我可以检查。 我试着的代码等于Joda LocalDate到Joda DateTime的转换: LocalDate contextLocalBusinessDate = calculator.getCurrentBusinessDate(); DateTime businessDateAsInContextLocation = new DateTime(contextLocalBusinessDate, contextTimeZone); 我得到的错误来自Joda的转换系统: java.lang.IllegalArgumentException: No instant converter found for type: org.joda.time.LocalDate at org.joda.time.convert.ConverterManager.getInstantConverter(ConverterManager.java:165) at org.joda.time.base.BaseDateTime.<init>(BaseDateTime.java:147) at org.joda.time.DateTime.<init>(DateTime.java:192) 我正在寻找一个解决这个问题的办法,或者是一个解决scheme,它能够得到一个精确的带有完整时区信息的区间。

如何在Java中获取您的时区的当前date和时间?

我有我的应用程序托pipe在伦敦服务器。 我在西class牙马德里。 所以时区是-2个小时。 我如何获得当前的date/时间与我的时区。 Date curr_date = new Date(System.currentTimeMillis()); 例如 Date curr_date = new Date(System.currentTimeMillis("MAD_TIMEZONE")); 与乔达时间 DateTimeZone zone = DateTimeZone.forID("Europe/Madrid"); DateTime dt = new DateTime(zone); int day = dt.getDayOfMonth(); int year = dt.getYear(); int month = dt.getMonthOfYear(); int hours = dt.getHourOfDay(); int minutes = dt.getMinuteOfHour();

Jodatime的DateTime默认date时区为UTC

我目前使用当前成语创buildUTC DateTime对象 DateTime now = new DateTime(DateTimeZone.UTC); 有什么办法可以默认,所以我可以使用默认的构造函数创build基于UTC的DateTime对象,所以它更隐含? DateTime now = new DateTime();

时间:如何获得下一个星期五?

我怎样才能得到Joda-Time API的下一个星期五。 今天的LocalDate是today 。 在我看来,你必须决定在本周五星期五之前或之后。 看到这个方法: private LocalDate calcNextFriday(LocalDate d) { LocalDate friday = d.dayOfWeek().setCopy(5); if (d.isBefore(friday)) { return d.dayOfWeek().setCopy(5); } else { return d.plusWeeks(1).dayOfWeek().setCopy(5); } } 是否有可能做得更短或与一个oneliner? PS:请不要通知我使用JDK的date/时间的东西。 Joda-Time是一个更好的API。 Java 8引入了更好的java.time包( Tutorial )。

如何在Jodatime中获得特定月份的天数?

30 days hath September, April, June and November, All the rest have 31, Excepting February alone (And that has 28 days clear, With 29 in each leap year). 我可以获取这些信息吗? (当然,我不是指这首诗)

在约达时间如何转换时区而不改变时间

我正在从数据库获取UTC时间戳,这是我设置到JodaTime DateTime实例 DateTime dt = new DateTime(timestamp.getTime()); 它存储的时间完全说10:00 AM但与当地时区。 例如,我在IST时区,从UTC到+5:30 我已经尝试了很多改变时区的东西,但是每一件事情都会改变从10:00 AM到其他地方的时间,通过使用+5:30差异 有什么办法可以在不影响当前时间的情况下更改TimeZone? 编辑:如果我目前的时间是: 2013-09-25 11:27:34 AM UTC 以下是我使用这个new DateTime(timestamp.getTime()); 2013-09-25 11:27:34 AM Asia/Kolkata 以下是我使用这个new DateTime(timestamp.getTime(), DateTimeZone.UTC) ; 2013-09-25 05:57:34 AM UTC

如何将Joda LocalDate转换为java.util.Date?

将JodaTime LocalDate转换为java.util.Date对象最简单的方法是什么?

如何parsing包括Joda时间在内的date

这段代码总是将date分析到当前时区,而不是分析正在分析的string中的时区。 final DateTimeFormatter df = DateTimeFormat .forPattern("EEE MMM dd HH:mm:ss 'GMT'Z yyyy"); final DateTime dateTime = df .parseDateTime("Mon Aug 24 12:36:46 GMT+1000 2009"); System.out.println("dateTime = " + dateTime); // outputs dateTime = 2009-08-24T04:36:46.000+02:00 它输出: dateTime = 2009-08-24T04:36:46.000+02:00 而我期望: dateTime = 2009-08-24T04:36:46.000+10:00 任何想法我做错了什么?