- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
当我输入这些内容时,我自己想通了。我将为包括我自己在内的 future 用户回答我自己的问题。
我希望能够在一个时间间隔内保存到LocalDateTime
对象,但似乎不允许。当我这样做时:
LocalDateTime start = new LocalDateTime();
LocalDateTime end = start.plusMinutes( 30 );
Interval interval = new Interval( start, end );
我遇到编译问题。我认为这是因为 LocalDateTime
不是 ReadableInstant
。
是否有合适的解决方法?
看起来这是可能的:
Period period = new Period(开始,结束);
但是你失去了“getStart\End”方法。
最佳答案
为了将 Interval
与 LocalDateTime
一起使用,您必须这样做:
Interval interval = new Interval( start.toDateTime(), end.toDateTime() );
结果时间使调试变得容易,因为时间将从本地时区转换而来,并且您知道您正在处理的是哪个时区。但是在夏令时期间会出现问题。要解决此问题,请将结果强制为 DateTimeZone.UTC
,在这种情况下,您将丢失与时间关联的时区数据(如果您实际开始使用 LocalDateTime,通常不会关心这些数据,但请确保您始终如一地使用它,永远不会在没有转换的情况下构建您的 Interval
。
Interval interval = new Interval(
start.toDateTime(DateTimeZone.UTC), end.toDateTime(DateTimeZone.UTC) );
下面的测试证明了这一点(假设你在 EST 时区)
@Test
public void testLocalDateTimeDST() {
LocalDateTime dst_2017_03_12 = LocalDateTime.parse("2017-03-12T02:01:00");
System.out.println(dst_2017_03_12);
try {
System.out.println(dst_2017_03_12.toDateTime());
Assert.fail("Should've thrown an IllegalInstantException");
} catch (IllegalInstantException e) {
}
System.out.println(dst_2017_03_12.toDateTime(DateTimeZone.UTC));
}
关于java - localdatetime 的 jodatime 间隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15488710/
我在从两个 LocalDateTime 对象获取秒数时遇到问题。 // a timestammp for the time when the connection was established pu
我有字段 initiationDate,它由 ToStringSerializer 类序列化为 ISO-8601 格式。 @JsonSerialize(using = ToStringSerializ
我有一个初始日期和一个 cron 表达式。我怎样才能找到满足此 cron 表达式的下一个日期?。 String cronExpresion = "* * * * * *" LocalD
我需要做一个 LocalDateTime UTC 日期到另一个日期的转换 LocalDateTime考虑特定时区 tz 的变量。 在我的研究中,我找到了很多解决方案,但它们都转换了 LocalDate
这个问题在这里已经有了答案: Java 8: Difference between two LocalDateTime in multiple units (11 个答案) 关闭 6 年前。 我知道
给定日期时间和时间, LocalDateTime rightDateWrongTime = new LocalDateTime("2017-03-02T15:23:00.000");
将 LocalDateTime 转换为 UTC 中的 LocalDateTime。 LocalDateTime convertToUtc(LocalDateTime date) { //do
这是我的代码: private final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMM dd HH:mm:ss");
我想为一些沉迷于日期值的数据创建一个小型 GUI。所以我在 JavaFX 中使用 LocalDateTimeTextField。所以我将使用以下代码获取选定的时间: LocalDateTimeText
解析 DateTime 时出现异常。我在这里缺少什么 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("0DDDHHmmss");
我有 REST 网络服务公开资源和创建日期。它是用 Java 8 编写的 - 使用 LocalDateTime。 Jackson 2 正在将其序列化为: “创建日期”:[2016, 5, 19, 18
有什么简单的方法可以将 Java 8 的 LocalDateTime 转换为 Joda 的 LocalDateTime? 其中一种方法是将其转换为字符串,然后从该字符串创建 Joda 的 LocalD
我在 Java 8 中使用 LocalDateTime.now() 获取 LocalDateTime。但有时这个 now() 函数会以没有秒的格式返回时间给我。我认为这是因为秒为零,但我需要秒。 代码
Date与LocalDateTime和LocalDate互相转换思路 Date转LocalDateTime和LocalDate都可以通过Date先转换成Instant然后再转换成LocalDateTi
在本教程中,我们将为LocalDate和LocalDateTime类编写自定义序列化程序和反序列化程序。 LocalDateSerializer LocalDateTimeSerializer Loc
从 API 传递的字符串通常遵循格式 yyyy-MM-dd HH:mm:ss.SSS但是当时间戳中有尾随 0 时,它们会被截断,例如 2019-07-16 13:29:15.100转换为 2019-0
我在 Java 8 中使用 spring boot 2.2.6 和 Jackson 2.10.3。我在整个项目中使用 localdatetime 对象。 Jackson 无法正确解析 LocalDat
我有使用年份和一年中的某一天 (1-365/366) 加上一天中的时间的数据,例如 2018-338T14:02:57.47583,而不是年月日。 我正在尝试编写一个输入时间戳的函数,它通过一堆正则表
我正在尝试将以下日期时间字符串解析为 LocalDateTimeObject,但是我无法识别日期时间字符串的格式。 2021 年 10 月 9 日星期六 02:10:23 -0400 Stri
我尝试并失败(或部分成功)为 LocalDateTime 实现扩展功能 这是我的尝试: fun LocalDateTime.isNotBefore(other: ChronoLocalDateTime
我是一名优秀的程序员,十分优秀!