Tag: jodatime

需要灵活的日期时间转换与joda

我想用joda来解析电子邮件中的日期时间字符串。 不幸的是,我得到了各种不同的格式,例如 Wed, 19 Jan 2011 12:52:31 -0600 Wed, 19 Jan 2011 10:15:34 -0800 (PST) Wed, 19 Jan 2011 20:03:48 +0000 (UTC) Wed, 19 Jan 2011 17:02:08 -0600 (CST) Fri, 21 Jan 2011 10:39:55 +0100 (CET) Fri, 21 Jan 2011 17:50:42 -0500 (EST) Wed, 06 Apr 2011 15:38:25 GMT Thu, 7 Apr 2011 11:38:24 +0200 […]

Joda-time:今年ISO第1周的第一天

我想知道今年的ISO第1周的周一日期(2009年将是2008年12月29日星期一)。 我确信joda-time可以解决这个问题,但我无法弄清楚API(可能已经太晚了)。 有人可以帮忙吗? 谢谢!

Joda时间,期间到总millis

我试图从Period对象实例中获取Milliseconds( 而不是 millis字段)的总量 。 我尝试过多次转换,因为我找不到任何方法可以轻松实现。 有没有人需要它并设法检索它? (我需要这个补丁,找出一个负期;负毫秒=负期。)

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

我想将Joda LocalTime转换为java.util.Date而不是 LocalDate。 如果这有帮助,我已经有了一个LocalTime对象。 显然,LocalTime中没有“日期”部分。 所以我不能直接将LocalTime转换为Date。 有一个简单的方法吗? 脚步 – LocalTime loct LocalDate locd = Todays date + loct Date da = locd.toDate();

Joda LocalTime Meridiem解析

当我使用08:00 AM作为startTime而09:00 AM作为endTime我的if语句完美无缺 LocalTime selected = new LocalTime(hourOfDay, minute); if (selected.isAfter(startTime) && selected.isBefore(endTime)) { // doing some work } 但每当我使用11:00 PM作为startTime而02:00 AM作为endTime那么我的if语句不起作用。 LocalTime startTime = LocalTime.parse(“11:00 PM”, DateTimeFormat.forPattern(“KK:mm a”)); LocalTime endTime = LocalTime.parse(“02:00 AM”, DateTimeFormat.forPattern(“KK:mm a”)); LocalTime selected = new LocalTime(hourOfDay, minute); if (selected.isAfter(startTime) && selected.isBefore(endTime)) { // doing some work }

在Joda Time获取一年中第一周的第一天的日期

我有一个Java日期:tempDate = Sun Jan 01 00:00:00 GMT + 01:00 2012。 我想创建一个新的日期,即tempDate年份第一周的第一天。 那是: Mon Jan 02 00:00:00 GMT+01:00 2012 当我尝试使用Joda时间时: DateTime cal = new DateTime(tempDate).withWeekOfWeekyear(1). withDayOfWeek(DateTimeConstants.MONDAY); 我得到了我想要的,但在前一年: Mon Jan 03 00:00:00 GMT+01:00 2011 我如何在Joda Time中完成这项工作?

从JdbcTemplate中的ResultSet获取DateTime

在数据库中我的列是TIMESTAMP类型,所以我的类具有类型为Datetime的属性,如下所示: public void setDiscoveryDate(final DateTime discoveryDtTm) { this.discoveryDtTm = discoveryDtTm; } 现在在JdbcTemplate中我想得到它,所以有些代码如下: variant.setDiscoveryDate(rs.getTimestamp(“discovery_dt_tm”)); 哪个不起作用,因为列为结果集的get我找不到返回DateTime的东西,我只看到了getDate或getTime。

如何比较Joda DateTime对象与可接受的偏移(容差)?

我想知道JodaTime是否有任何标准API来比较具有指定容差的2个DateTime对象? 我正在寻找一个Joda最好使用Joda标准API。 不是像这篇文章中那样的时间 – aritmethic表达式。 理想情况下,它会是这样的: boolean areNearlyEqual = SomeJodaAPIClass.equal(dt1, dt2, maxTolerance); 谢谢!

在JodaTime中生成日期范围

我需要检查数组列表中是否存在日期(字符串)。 我有两个日期,首先我需要在这两个日期之间生成日期范围并将它们存储在一个数组中。 这就是我在做的事情。 DateTimeFormatter dateFromatter= DateTimeFormat.forPattern(“MM/dd/yyyy”); DateTime startDate= formatter.parseDateTime(“01/02/2012”); DateTime endDate= formatter.parseDateTime(“01/31/2012”); List dates = new ArrayList(); int days = Days.daysBetween(startDate, endDate).getDays(); for (int i=0; i < days; i++) { 这是我遇到问题的地方。 Type mismatch: cannot convert from DateTime to LocalDate > LocalDate listOfDates = > startDate.withFieldAdded(DurationFieldType.days(), i); > dates.add(listOfDates); }

使用Joda-Time为Mongo插入形成正确的ISODate

我正在尝试更新需要ISODate格式的mongo中的日期字段。 在mongo中,它看起来像这样: “crDt” : ISODate(“2013-08-19T17:21:57.549Z”) 我正在使用的Java框架限制使用字符串作为我的测试参数,所以我试图将该字符串与DateTimeFormatter一起使用,以使其进入正确的ISODateTimeFormat ,然后将其传递给mongo。 我不能只传入一个看起来像我上面的字符串。 试图这样做搞砸了mongo的领域。 我正在使用的Joda-Time代码的相关位如下所示: //I can’t get this right. String crDt = “2013-01-19T15:28:58.851Z”; DateTimeFormatter parser = ISODateTimeFormat.dateHourMinuteSecondMillis(); parser.parseDateTime(crDt); // this method updates the record in mongo. This method totally works, so no // point in pasting it here, I just can’t get the parser object correct to be // […]