问题标签 [datetimeformatter]

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 回答
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 投票
1 回答
475 浏览

java - 为什么Java的 java.time.format.DateTimeFormatter#format(LocalDateTime) 加一年?

这是代码:

这是 的值localDateTime

这是 的值output

为什么要加一年?

java.time.temporal.WeekFields几种方法有时会newYearWeek增加年份1。为什么?

这是一个奇怪的错误。

0 投票
2 回答
22158 浏览

java - 使用 DateTimeFormatter ofPattern 解析日期

我正在尝试使用 解析包含日期和时间的字符串java.time.format.DateTimeFormatter(我的最终目标是将此字符串中的日期转换为java.time.LocalDate)。

尝试解析日期时,我不断收到 DateTimeParseExceptions。有人可以帮忙吗?

日期格式为“2015-07-14T11:42:12.000+01:00”。

我尝试了 ofPattern 的不同变体,例如尝试通过用单引号将 T 括起来(如上所述)来逃避它,并对 . 我已经尝试同时逃避两者。

冒号也需要转义吗?

感谢您对此的任何帮助。

0 投票
1 回答
2880 浏览

java - Java 8 DateTimeFormatter 在为零时丢弃毫秒?

这似乎很奇怪。Java 8 根据毫秒是否为零来格式化输出。您如何强制 Java 8 (1.8.0_20) 始终吐出毫秒,无论它们是否为零?

0 投票
4 回答
11396 浏览

java - 如何创建正确的 DateTimeFormatter 模式

我正在尝试使用模式创建一个 DateTimeFormatter 对象以适应此时间表达式:2016-07-22T00:00:00.000-05:00。我正在尝试使用带有上述输入字符串的 DateTimeFormatter 类创建一个 DateTime 对象。

我尝试了以下表达式的许多不同版本,但目前卡在时区片段“-05:00”,在我的 junit 测试用例中出现错误:

我正在使用的当前格式模式是:

我也试过:

我在 Java 7 上运行,所以我不确定这是否也会导致问题。

0 投票
4 回答
10984 浏览

java - Java 8 日期时间格式化程序

我需要用 Java 8 DateTimeFormatter 替换 SimpleDataFormat。下面是 SimpleDateFormat 的代码。

现在我需要将其更改为 DateTimeFormatter。我尝试如下

现在这正在产生异常。

0 投票
6 回答
64263 浏览

java - java.util.date 到 String 使用 DateTimeFormatter

如何将 a 转换java.util.DateStringusing

我得到的 Date 对象被传递

0 投票
2 回答
12556 浏览

java - DateTimeFormatter.ISO_OFFSET_DATE_TIME 的等效格式字符串是什么?

我们是否知道是否存在输出相同结果的等效格式字符串DateTimeFormatter.ISO_OFFSET_DATE_TIME

IE

会输出相同的

0 投票
2 回答
1018 浏览

java - java.time.format.DateTimeFormatter.ISO_INSTANT 的格式字符串?

在 Java 8 的java.time包中,有这个格式化程序

java.time.format.DateTimeFormatter.ISO_INSTANT( JavaDoc )

它允许在解析和格式化时使用可选的小数秒

以 UTC 格式格式化或解析瞬间的 ISO 瞬间格式化程序,例如“2011-12-03T10:15:30Z”。

这将返回一个能够格式化和解析 ISO-8601 即时格式的不可变格式化程序。格式化时,总是输出秒数。纳秒根据需要输出零、三、六或九位数字。解析时,至少需要秒字段的时间。解析从零到九的小数秒。不使用本地化的十进制样式。

可用于创建此格式化程序的格式字符串是什么?我需要存储String但不是DateTimeFormatter因为后者不可序列化。

具体来说,我想知道如何表达小数秒(包括.数字前面的)。我知道S是几分之一秒,X是区域偏移,但我不知道如何把它们放在一起

0 投票
2 回答
492 浏览

java - 无法使用 LocalDateTime 解析日期?

我正在尝试使用 DateTimeFormatter 解析日期字符串。我收到以下异常:

错误的日期格式 10.10.2020 12:00:00 java.time.format.DateTimeParseException:无法在索引 2 处解析文本“10.10.2020 12:00:00”

任何帮助,将不胜感激?