问题标签 [java-time]

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.

0 投票
2 回答
19326 浏览

java - 无法导入 java.time 包

我正在使用 NetBeans。我正在尝试import java.time.*,但 NetBeans(和 DrJava)坚持认为这不存在。我已经安装了JDK 8,但我不知道如何让程序找到java.time。帮助!

编辑:

不管它值多少钱,我在首选项中看到“源”是 JDK 7,但我不知道如何将其设置为 JDK 8(没有选项)。

NetBeans 关于:

  • 产品版本:NetBeans IDE 8.0(内部版本 201403101706)
  • 更新:NetBeans IDE 已更新至 NetBeans 8.0 Patch 1.1 版本
  • 爪哇:1.7.0_09;Java HotSpot(TM) 64 位服务器 VM 23.5-b02
  • 运行时:Java(TM) SE 运行时环境 1.7.0_09-b05
  • 系统:在amd64上运行的Windows 7 6.1版;CP1252; en_US (注)
  • 用户目录:C:\Users\Mikhail Firer\AppData\Roaming\NetBeans\8.0
  • 缓存目录:C:\Users\Mikhail Firer\AppData\Local\NetBeans\Cache\8.0
0 投票
2 回答
55 浏览

java - 具有更大小时数的 Java 时间对象(用于倒计时)

我有这段代码:它的作用是将 String 转换为 Time 对象。

主要目的是用户可以输入格式为 HH:MM:SS 的时间。问题是 HH 可以是任何数字(> 12,甚至> 24)。我如何保持 HH 的原样?在上面的片段中,我得到的时间是12:30:18。如何防止 HH 部分被解析(我希望它保持 288)?

0 投票
4 回答
86473 浏览

java - Java 8 日期时间 API (java.time) 和 Joda-Time 之间的差异

我知道有关于java.util.Date和 Joda-Time 的问题。但是经过一番挖掘,我找不到关于java.time APIJava 8中的新功能,由JSR 310定义)和Joda-Time之间差异的线程。

我听说 Java 8 的 java.time API 比 Joda-Time 更干净,可以做更多的事情。但我找不到比较两者的例子。

  • java.time 能做什么而 Joda-Time 不能?
  • java.time 能比 Joda-Time 做得更好吗?
  • java.time 的性能更好吗?
0 投票
3 回答
1538 浏览

java - 如何在java中比较两次?

我正在开发一个用于同步联系人的应用程序。每个联系人都有一个 update_time 字段。我想将此当前 update_time以前的 update_time进行比较

我的问题是我将这个时间作为字符串格式存储在我的数据库中。

1.如何将此字符串转换为时间?

2.如何比较两次?

2014-07-11 15:10:55这是我的时间格式。

欢迎任何帮助或评论。感谢您的宝贵回答。

0 投票
2 回答
2405 浏览

java - DateTimeFormatter 模式问题

我正在编写一个股票程序,该程序(到目前为止)通过如下请求从“Markit on Demand”获取数据:

http://dev.markitondemand.com/Api/v2/Quote/xml?symbol=aapl

这将返回 xml 中的数据,以及股票的各种度量(符号、名称、最后价格、变化、时间戳等)。

我无法在 Java 8 中创建 DateTimeFormatter 来制作时间戳。

时间戳的一个示例:

Fri Jul 18 15:59:00 UTC-04:00 2014

到目前为止,我的模式如下:

EEE MMM d HH:mm:ss OOOO yyyy

我相信你们中的一些人可以发现,我在偏移方面遇到了麻烦。

从文档:

偏移量 X 和 x:这会根据模式字母的数量来格式化偏移量。一个字母仅输出小时,例如“+01”,除非分钟不为零,在这种情况下也会输出分钟,例如“+0130”。两个字母输出小时和分钟,不带冒号,如'+0130'。三个字母输出小时和分钟,带有冒号,例如'+01:30'。四个字母输出小时和分钟以及可选的秒,不带冒号,例如'+013015'。五个字母输出小时和分钟以及可选的秒,带有冒号,例如'+01:30:15'。六个或更多字母会引发 IllegalArgumentException。当要输出的偏移量为零时,模式字母'X'(大写)将输出'Z',而模式字母'x'(小写)将输出'+00','

偏移量 O:这会根据模式字母的数量格式化本地化偏移量。一个字母输出本地化偏移量的简写形式,即本地化偏移量文本,例如“GMT”,小时不带前导零,如果非零,则可选两位数分钟和秒,以及冒号,例如“GMT+8” '。四个字母输出完整形式,即本地化偏移文本,例如“GMT”,带有 2 位小时和分钟字段,如果非零,则可选第二个字段和冒号,例如“GMT+08:00”。任何其他字母计数都会引发 IllegalArgumentException。

偏移 Z:这会根据图案字母的数量来格式化偏移。一个、两个或三个字母输出小时和分钟,不带冒号,例如'+0130'。当偏移量为零时,输出将为“+0000”。四个字母输出本地化偏移的完整形式,相当于四个字母的Offset-O。如果偏移量为零,则输出将是相应的本地化偏移量文本。五个字母输出小时、分钟,如果非零,则可选秒,带冒号。如果偏移量为零,则输出“Z”。六个或更多字母会引发 IllegalArgumentException。

这行得通,但我很好奇为什么(代替'UTC'XXX)OOOO不起作用。

0 投票
2 回答
674 浏览

java - 在 Java 中计算时差

我需要计算文件的 Lastmodified 时间和文件所在的 FTP 服务器的 currentTime 之间的时间差。

美国 FTP 服务器中存在一个名为 abc.txt 的文件(上次修改时间 - 2014 年 7 月 23 日 1:00:00 AM)。我需要获取文件的最后修改时间戳 (t1) 和美国 FTP 服务器的 currentTime (t2) 并计算两次之间的分钟差 (d1,d2)

这是我到目前为止所拥有的。

0 投票
1 回答
1276 浏览

date - ISO 8601 的月日部分的 --MM-DD 格式是什么?

Java 8 日期/时间 API java.time有一个MonthDay 类来表示一个月和一天。Joda-Time库也提供MonthDay类。

在 java.time 中,该MonthDay.toString()方法被声明为:

以字符串形式输出本月-日,例如 --12-03。

java.time 中的大多数类都有它们的toString()方法输出它们所代表的概念的标准 ISO 8601 表示(YYYY-MM-DD例如LocalDate),所以我希望这种--MM-DD格式也是标准的。

但我在 ISO 8601 标准中找不到这个。

月日是ISO 8601 定义的概念吗?如果是,是--MM-DD标准格式吗?

背景:我正在开发另一种语言的日期/时间 API。

0 投票
1 回答
7045 浏览

java - 将字符串解析为具有 UTC 时区的 ZonedDateTime

您如何使用 ThreeTen 库(我不能使用 java 8)解析以下格式的字符串:

2014 年 8 月 15 日

强迫这成为ZonedDateTime2014 年 8 月 15 日 UTC 时区午夜的意义?

0 投票
1 回答
1886 浏览

java - Java Time API - 获取总运行时间的更好方法

这是我第一次有机会使用 Java 8 中的“新”java.time 包。

我需要获得总经过时间,例如:
1 day, 2h:3m:4s 5ms

我知道有 2TemporalAmount种间隔实现:
-Period年、月和日
-Duration小时、分钟、秒、毫秒和纳秒

有没有一种方法可以将这两者结合起来,或者比“做数学”更直接的方法?

这是迄今为止我能做的最好的事情:( 更新了一个新的改进版本)

谢谢你的时间=)

0 投票
1 回答
1927 浏览

java - 在 java.time 中格式化日期

我正在尝试格式化日期以下列格式给出05051988。我想LocalDate在 next 中使用格式化05 may 1988

我已经创建了私有方法,稍后我将在同一类中使用它来输入文本中的格式化日期。我已经编写了一些代码,但1988-05-05如果我使用,我现在得到了MM,如果我用它替换它,MMM它会给我无法解析的错误消息。

错误: