问题标签 [rfc3339]
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.
python - 将 RFC3339 标准时间传递给 InfluxDB,导致结果错误
我正在尝试使用 Python将数据填充到InfluxDB中。我的RFC 3339时间戳是“2016-01-11T01:07:39+05:30”。当我尝试将其传递给 InfluxDB 时,它返回一个时间:“2016-01-10T19:37:39Z”,而我实际上希望 InfluxDB 中的时间为“2016-01-11T01:07:39”。我什至尝试只通过“2016-01-11T01:07:39”离开“+5:30”,但它仍然没有给我任何结果。我犯了什么错误?
java - Mybatis使用postgreSQL的日期对象问题
实际上我不清楚这个问题是 Java、JSP 还是 Mybatis。
目前面临的问题如下:
前端
Java JSP Struts 2 Spring
后端
PostgreSQL 9.3.XX
PostgreSQL 中的问题
在jsp中写的页面代码
在使用 mybatis 生成器的 Java 文件中,它生成以下代码
在 Mybatis 文件中
从 jsp 页面[1988/01/13]插入值时,然后在 java 控制台中获取
[Sat Jun 11 00:00:00 JST 18]价值。这是错误的。
如果我将私人日期生日更改为私人字符串生日,那么控制台没有任何问题,但在数据库中插入值会生成错误。
我尝试了不同的方法,但仍然没有找到答案。
如何YYYY/MM/DD
在日期对象中获取格式(不是在字符串中)?
parsing - 从不完整的字符串中解析 golang 时间对象
我有以下日期字符串:2017-09-04T04:00:00Z
我需要将此字符串解析为 golang 时间,以便在我的应用程序中拥有统一的数据。这是到目前为止的代码:
尝试运行程序时出现以下错误:
如何添加它正在寻找的额外文本或让解析器停止关注 Z?
我还尝试了以下方法:
返回以下错误:
parsing - golang 中的 RFC3339 时间解析
我正在从数据库中提取时间戳,它使用 RFC3339 格式,但缺少时区。因此,当我尝试比较时间戳时,它将关闭。如何将 dbtime 更改为东部时间?
我的输出是
json - 解组格式不正确的日期时间
背景
我正在学习 Go,并且正在尝试对日期时间进行一些 JSON 解组。
我有一些由我用 C 编写的程序生成的 JSON,我正在输出我认为是有效的ISO8601 / RFC3339时区偏移量。我正在使用strftime
以下格式字符串:
(请注意,本机%f
不支持strftime
,我有一个用纳秒替换它的包装器)。
这将产生以下结果:
然而,在 Go 中解组这个是行不通的:https: //play.golang.org/p/vzOXbzAwdW
输出:
(工作示例: https: //play.golang.org/p/5xcM0aHsSw)
这是因为RFC3339 期望时区偏移量采用02:00
带有 a的格式:
,但strftime
将其输出为0200
.
所以我需要在我的 C 程序中修复这个问题以输出正确的格式。
问题
但是,现在我有一堆格式不正确的 JSON 文件:
而不是正确的(:
在时区偏移中):
但我仍然希望能够在我的 Go 程序中正确解组它。最好是只有这种差异的两个不同的 JSON 文件应该以完全相同的方式解析。
关于封送回 JSON,应使用正确的格式。
这就是我在我的struct
:
所以问题是,这样做的“Go”方式是什么?
同样在我的代码示例中,我正在使用RFC3339Nano
. 我如何在结构的元数据中指定它?正如我现在所拥有的那样,它json:"time"
会忽略纳秒吗?
php - 在PHP中的字符前修剪字符串
我有这个日期/时间字符串
我希望能够删除Z
. 不太确定该怎么做。我试图重做这个:
但无法弄清楚如何Z
在字符串的末尾而不是字符串的末尾进行修剪。
java - 应该使用什么模式来解析 Java 中的 RFC 3339 日期时间字符串
这似乎是一个常见的问题,有许多不同的答案。在你回答之前,我已经使用了joda-time和atomdate并且它们工作得很好。我在这里的兴趣不是使用什么库,而是澄清应该如何在 java 中定义 RFC 模式。
研究
根据我的理解和这个答案RFC 3339 是 ISO 8601 的配置文件。PHP清楚地将RFC 3339 日期时间模式定义为Y-m-d\TH:i:sP
. 如果我们要将这个定义转移到 java 7(据我所知),我们最终会得到这个(在这个答案中也提到过):
但是,像这样的几个堆栈溢出答案指向其中之一(或两者)是 RFC 3339 的正确模式
更复杂的是,官方RFC 3339文档列出了以下所有示例(我添加了我认为它们对应的模式):
旁注: Android 不支持XXX
时区模式,但您可以ZZZZZ
按照此答案使用。
我认为让我感到困惑的部分原因是我总是看到 RFC 822 和 RFC 2822 分别由一个模式专门引用,所以我认为 RFC 3339 也可以归结为一个模式匹配:
我的结论
与 php 不同,RFC 3339 不能在 java 中仅使用单个匹配表达式来表示。相反,所有这些都是有效的 RFC 3339 模式,并且在解析日期时间字符串时必须通过以下方式检查SimpleDateFormat
:
更新
更复杂的是,SimpleDateFormat 似乎无法正确处理“Z”时区文字。它不是假设 UTC,而是默认为 PST 或您的本地时间(我不确定哪个)。这意味着您可能需要手动将“Z”文字替换为 +00:00 以纠正此行为?
要旨
正如建议的那样,我创建了一个实用程序类 Gist,其中包括我当前正在运行的代码。这应该在 Android 上运行,并且与 Java 7+ 兼容。请随时提出任何问题或发表评论。如果有足够的兴趣,我可以将其移至 Github,以便其他人可以贡献:
https://gist.github.com/oseparovic/d9ee771927ac5f3aefc8ba0b99c0cf38
我是正确理解这一点还是我完全关闭了?我非常感谢你们能提供关于如何在 java 7 中解析 RFC 3339 字符串的任何说明。
javascript - 了解 RFC3339 时间戳标准
我目前正在创建一个连接到 Google Calendar API 的简单登录表。当用户输入提示信息时,包括开始日期时间和结束时间,它应该根据用户输入创建一个日历事件。我设法做到了,所以它是一个日历事件。但是,时间真的很奇怪,我不明白时间是如何得出的。
对于下面的代码,我假设它会在 2016 年 12 月 16 日下午 2 点创建一个日历事件,但事实并非如此,它会在 2016 年 12 月 16 日上午 9 点创建一个事件。这是为什么?谢谢!
ios - RFC 3339 日期格式化程序 - 为什么输出日期会偏移一天?
我们在使用 Objective-c 开发的现有 iOS 应用程序中收到了一个问题。
问题:输出日期前移一天,仅适用于 PST 时区。
我们在下面编写了将日期转换为短格式的代码。
输入日期字符串 = 2017-01-16T00:00:00-06:00
UTC 格式:日期 = 2017-01-16 06:00:00 +0000
输出日期字符串 = 2017-01-15
请帮助我们解决问题。