问题标签 [java.time.instant]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 到 LocalDateTime 的字符串引发 DateTimeParseException
我在尝试将String
时间戳转换为LocalDateTime
我从数据库接收到这个字符串2018013014364112
,它包含日期和时间,应该2018-01-30 14:36:41.12
以更易读的格式编写。
当我尝试解析它时,LocalDateTime
我得到一个Exception
例外:
但是,如果我在String
and中的任何位置放置空间FormatPattern
,那么我会得到预期的结果
此外,当我从模式中删除“ SS
”时,即使没有空格,我也会得到预期的结果String
java - Joda-Time 到 java.time 迁移 'fromDateFields()'
我们目前正在从 Joda-Time 迁移到 java.time。我对方法有以下疑问fromDateFields()
。旧约达代码:
一位同事将其迁移到以下行(java.time 代码):
那是对的吗?Joda-Time 文档描述了这样的方法fromeDateFields
:
使用完全相同的字段值从 java.util.Date 构造 LocalDateTime。
每个字段都从 Date 中查询并分配给 LocalDateTime。如果您一直使用 Date 作为本地日期, 而忽略 zone ,这将很有用。
达到相同结果的正确方法是什么?
更新(刚刚找到以下解决方案):
java - 如何在UTC java中获得今天的特定时间
我正在尝试获取“今天”的 UTC 特定时间。说世界标准时间下午 5 点
,
Instant.now().truncatedTo(ChronoUnit.DAYS).plus(1, ChronoUnit.DAYS)
或者
Instant.now().plus(1, ChronoUnit.DAYS).truncatedTo(ChronoUnit.DAYS)
我相信这会让我到当天午夜。我只是扩展这个
Instant.now().truncatedTo(ChronoUnit.DAYS).plus(1, ChronoUnit.DAYS).minus(7, ChronoUnit.HOURS);
还是有更好的方法来做到这一点。
java - 将 java 变量 Instant 类型重置为零或清除它
我正在用 JAVA 向呼叫中心实施一些服务。我需要记录通话的持续时间,所以我使用它来做到这一点:
效果很好……问题是我的屏幕上有一个取消按钮,它可以清除所有字段或将它们重置为 0……我还没有弄清楚如何将我的 最后一个变量返回为 0……或清除包含我最后一个Instant 类型变量的字段的东西。我可以设置为“”我的duracion变量,因为它是一个字符串......但是我怎样才能用我的 java.time.Instant 变量来实现呢?我也在使用primefaces。
java - 为什么 JPA 不支持 java.time.Instant?
我认为这java.time.Instant
是将日期存储到 DB 中的最佳选择:它最有可能是TIMESTAMP,而且您不依赖于时区,它只是时间的片刻。
JPA 支持LocalDate
,等LocalTime
,LocalDateTime
但不支持 Instant。当然,您可以使用JadiraAttributeConverter
之类的库,但为什么不支持开箱即用?
java - 从 Instant.now() 生成的日期中提取日期、小时和分钟
我有这个生成日期和时间的代码,
是否有像 chrono 这样的库 - https://docs.oracle.com/javase/8/docs/api/java/time/temporal/ChronoField.html字段可用于获取日期、小时和分钟?
Chrono 字段不会提取完整的日期。
java - 为什么 Java 的 DateTimeFormatter 不能安全地解析/格式化 Instants 的往返行程?
问题
也许我在这里误用了 API 或遗漏了一些信息。这是 API 的错误还是设计缺陷?
跟进
最近我正在使用java.time
(在 scala 的 REPL 中,但它并不真正感兴趣)parse
和format
一个日期,它也包含一个偏移量但没有这样的时间:"2018-03-24+01:00"
到目前为止一切顺利,当尝试创建Instant.from(t)
this 时会导致异常:
ChronoFields
由于缺少所需的内容,因此这是可以预期的或至少对我来说是合理的。对此特定场景的修复可能是提供一个健全的默认时间,例如在调用后手动LocalDate.MIDNIGHT
构建一个:Instant
parse
f
好吧,这解决了我当前的问题,但感觉不满意。然后我想知道在使用保存时间的格式化程序时,API 是否能够进行往返。因此,我想出了可用java.time.format.DateTimeFormatter
实例的列表,并将它们放在一个小测试函数上来验证这一点:
这会产生以下输出:
因此,目前只有ISO_INSTANT
格式化程序正在工作,至少我希望它能够工作,因此能够在往返场景中工作。
java - Java 的 System.Time.Instant.now 仅以 15 毫秒的间隔更新
我正在使用 System.Time.Instant 来确定 Web 地址响应简单请求的速度。我的总体目标是确定我的家用计算机与我在 200 英里外的远程计算机上设置的服务之间的延迟。这是代码的简化版本,否则运行良好:
这往往会产生 0 毫秒或 14-16 毫秒的结果,或者偶尔会产生大约 15 毫秒的倍数的更长周期。但是,延迟为 0 毫秒在物理上是不可能的,即使向下舍入也是如此。两台机器相距 200 英里,因此信号必须至少花费 2 到 3 毫秒的时间,否则会超过光速。
我能找到的唯一类似问题是 2009 年的这个问题,第二个答案提出了一个原因(但使用了不同的方法),并且文档链接已损坏:Timer accuracy in java,另外,从那时起,Java 似乎已经更新了计时。而且,声称系统计时器没有定期更新似乎非同寻常,我在其他任何地方都找不到它重复。
这是将持续时间计算到最接近毫秒的足够好方法吗?从我最近读到的内容来看,纳秒计时器会更准确,但我不需要那么精确,而且我在不试图理解问题发生的原因并从中学习的情况下解决问题是一种糟糕的形式. 我在做什么错或误解?
java-8 - 如何在 JDK 1.8 中使用 java.time 包的 DateTimeFormatter?
如何在 JDK 1.8 中使用包DateTimeFormatter
? java.time
当我使用时LocalDate
,我有一个 Noclassdeffounderror。
我将项目从 JDK 1.7 更改为 1.8。
有没有要添加的jar文件?
java - Timestamp.from 不注意 Instant 的时区
当我尝试将 a 转换ZonedDateTime
为 a 时,Timestamp
一切都很好,直到我调用Timestamp.from()
以下代码:
为什么Timestamp.from()
不注意即时设置的时区?