java-time相关内容
我在javafx中使用了DatePicker - JDK 8并使用了HijrahChronology.INSTANCE - 所以日期选择器显示了日历 - 一切都运行良好但我在格里高利历和hijri日历之间有1天的差异。 Hijri日历是向后1天。 我正在尝试根据以下链接更改变体 https://bugs.openjdk.java.net/browse/JDK-8187987 但无法成
..
我们的客户今天发现了一个有趣的错误。请考虑以下方法: final DateTimeFormatter englishFormatter = DateTimeFormatter.ofLocalizedDate(FormatStyle.SHORT).withLocale(Locale.ENGLISH); System.out.println(LocalDate.parse(“04/01/1
..
根据 java.time文档,java.time应该能够以纳秒精度呈现LocalDateTime或LocalTime,但是当我运行 LocalDateTime.now()并打印出来时,它只显示3数字而不是9。 喜欢这样: 2016-08 -11T22:17:35.031 有没有办法获得更高的精度? 解决方案 我假设您只是使用 LocalDateTime.to
..
我需要将不同的时间格式解析为 BASIC_ISO_DATE 。现在,有4种类型的日期格式: 2016-10-01 (ISO_LOCAL_DATE) 2016T 201610T 2016-02-07T22:03:39.937Z (ISO 8601) 需要解析为 20161001 并打印出来,默认日期为 01 ,默认月 Jan 。示例: 2016T - > 20160101
..
基本上,我使用以下代码将字符串解析为LocalDateTime,它在大多数情况下都能正常工作。 DateTimeFormatter dtformatter = DateTimeFormatter.ofPattern(“yyyyMMddHHmmssSSS”); 但是,遇到秒和毫秒为 00000 ,这是解析器失败并打印 LocalDateTime 2018-03-01T0
..
我正在编写一个股票程序(到目前为止)通过以下请求从“Markit on Demand”获取数据:
..
我需要将一个字符串转换为LocalTime(java-8而不是joda),该字符串可能有也可能没有nanoOfSeconds。 String格式的形式为 07:06:05 或 07:06:05.123456 字符串在秒内可能有或没有小数位,当它出现时,可以有任意数量的字符来表示Nano Seconds部分。 使用DateTimeForamtter,例如 DateTimeForma
..
在Java 8之前,常见的方法是日历 API: Calendar cal = Calendar.getInstance(); int hour = cal.get(Calendar.HOUR_OF_DAY); 如何获得当前小时数,但使用新的日期时间API 在 Java 8 中提供? 解决方案 这完全取决于......但 LocalTime now =
..
2017年3月12日02:39:00“America / Chicago”不存在。当我将日期和时间设置为此值时,它不会失败。一小时后,时间设置为 2017年3月12日03:39:00 。如何通知此时间不存在。以下是时间向前跳过的方式 01:59:59 3:00:00 如你所见 02:39:00 将永远不会存在这个日期。 这是我正在使用的代码 pac
..
在旧的java中,我可以这样做: System.out.println(new SimpleDateFormat(“yyyy w”) “,Locale.UK).parse(”2015 1“)); //显示2014年12月29日00:00:00 CET 2014 System.out.println(新的SimpleDateFormat(“yyyy w”,Locale.US).p
..
我使用java 8 LocalDate和Period类来添加和删除年,月和日。为什么在某些情况下如果添加Period到date并删除相同的句点java 8会返回另一个日期? LocalDate date = LocalDate.of (2023,1,30); 期间= Period.of(6,1,1); System.out.println(date.plus(period).minu
..
我正在尝试写一个 DateTimeFormatter ,它允许我接受多种不同的 String 格式,然后将 String 格式转换为特定类型。由于项目的范围和已经存在的代码,我不能使用不同类型的格式化程序。 例如,我想接受 MM / dd / yyyy 以及 yyyy-MM-dd'T'HH:mm:ss 但是当我打印时我只想要打印到 MM / dd / yyyy 格式并在我调用 LocalDa
..
我有以下格式化程序: DateTimeFormatter formatter = new DateTimeFormatterBuilder() .appendPattern(“yyyyMM” ) .parseDefaulting(ChronoField.SECOND_OF_MINUTE,0) .parseDefaulting(ChronoField.MINUTE_OF_HOUR,0)
..
我在Java 8中编写了一些使用时间算法的代码。 我意识到我可以在不同的方面实施。让我们看看下面的简单代码。当然它是相同的结果,但我混淆了哪种方式主要应用或最有效地在Java 8中进行算术运算? LocalTime time = LocalTime.now(); //第一路 LocalTime plusOp = time.plus(Duration.ofMinutes(10L));
..
默认情况下, toString 方法=“noreferrer”> Instant 使用 DateTimeFormatter.ISO_INSTANT formatter。如果格式化程序碰巧为0,则格式化程序不会打印小数位数。 java-time 示例: 2015-10-08T17:13:07.589Z 2015-10-08T17:13:07Z Joda-Tim
..
我正在查看 DateTimeFormatter 类,我想知道常量在哪里“M”,“EEE定义了“和”YY“等。更具体地说,在 ChronoField 和 TextStyle ,它应该返回 DateTimeFormatter 字符串片段,例如(ChronoField.MONTH_OF_YEAR,TextStyle.SHORT)应映射到字符串“MMM” 解决方案 经过一些挖掘,我发现这些是在私有
..
由于某些原因,我们现在不能使用java 8 - 我们仍然坚持使用java 7. 但是,我想使用新的 JSR -310日期/时间API 现在使用官方backport ThreeTen 。 其主页声明: backport不是JSR-310的实现,如这需要 跳过很多不必要的箍。相反,这是一个简单的backport ,旨在允许用户在Java SE 6和7上快速使用JSR-310 AP
..
我正在尝试解析: 2014-05-02-10.45.05.993280-5:00 其中 -5:00 是UTC的偏移量。使用java.time Java 8中的DateTimeFormatter 。 对于第一位,我有以下内容: yyyy-MM- dd-HH.mm.ss.SSSSSS 但是,我无法弄清楚解析偏移量的模式应该是什么。 如果我有4位数的偏移量(-05:00),我可以使用: yy
..
我有一个很长的时间戳1499070300(相当于周一,2017年7月3日16:25:00 +0800)但是当我将它转换为LocalDateTime时,我得到1970-01-18T16:24:30.300 这是我的代码 long test_timestamp = 1499070300; LocalDateTime triggerTime = LocalDateTime.of
..
我只是将模块从旧的java日期迁移到新的java.time API,并注意到性能大幅下降。归结为使用时区解析日期(我一次解析数百万个)。 解析没有时区的日期字符串( yyyy / MM / dd HH:mm:ss )速度快 - 比旧的Java日期快2倍,在我的电脑上每秒约1.5M操作。 但是,当模式包含时区时( yyyy / MM / dd HH:mm:ss z )使用新的 java.
..