问题标签 [iso8601]
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.
php - 解析并创建 ISO 8601 日期和时间间隔,如 PHP 中的 PT15M
我正在使用的库和 Web 服务以ISO 8601 格式传达时间间隔:PnYnMnDTnHnMnS
. 我想将这些格式转换为秒。反之亦然。秒数更容易计算。
示例间隔值是:
- PT1M 或 PT60S(1 分钟)
- PT1H、PT60M 或 PT3600S(1 小时)
我需要两个函数:从这样的值解析到秒:iso8601_interval_to_seconds()
和从秒到这样的间隔:iso8601_interval_from_seconds()
.
后者相当简单,因为它可以作为 `"PT{$seconds}S" 完成,始终传递几秒钟。也许这可以通过切换到 H(小时)或 M(分钟)的解析器做得更好?
第一个更难,但也许 PHP 中的许多字符串到日期转换器中的一个有一个技巧?我很想学习如何使用这样的函数来解析间隔。或者学习一个替代方案。
java - ISO 8601 字符串到 Android 中的日期/时间对象
我有一个标准ISO 8601格式的字符串,其中包含从 Web 服务返回的日期/时间,如下所示:
如何将其放入时间或日期等对象中?我最初想以不同的格式输出它,但以后需要用它做其他事情(即可能以不同的格式使用)。
干杯
regex - C# ISO 8601 时间间隔验证
我已经搜索了一段时间,似乎找不到与此相关的任何内容。
我需要验证 ISO 8601 时间间隔。有很多关于 ISO 8601 日期时间的东西,但我特别需要间隔。我正在使用正则表达式,这就是我到目前为止所拥有的;
正则表达式 regEx = new Regex(@"^P((\d+)Y)((\d+)M)((\d+)D)(T)((\d+)H)((\d+)M)(( \d+((.)?(\d)?(\d)?))S)$");
所以基本上这会检查输入字符串是否完全形成,例如 P0Y0M1DT1H2M2.01S 将被验证,但标准规定也应接受较小的字符串,如 PT4S。
如果有人可以帮助我,我将不胜感激。我一直在阅读条件正则表达式,但不太确定如何使用它。
非常感谢。
sql-server-2008 - Wrong week number in ISO 8601 date in SQL Server Analysis Services
According to ISO 8601, the first week of the year is the week with the year's first Thursday in it. http://en.wikipedia.org/wiki/ISO_week_date#First_week.
Unfortunately, SQL Server Analysis Services (SQL Server 2008) seems to have a bug in the ISO 8601 date implementation, since week 1 starts at January 1st, 2010 and not (as it should) at January 4th.
Is that assumption right? Does anybody know anything about that problem?
ruby - ruby 中是否有适用于 ISO 8601 的综合库/模块?
是否已经在 ruby 中实现了ISO 8601标准的所有日期、时间、持续时间和间隔使用?我的意思是一个类,您可以在其中设置和获取详细信息,例如年、月、日、day_of_the_week、周、小时、分钟、is_duration?、has_recurrence?等等哪些也可以设置并导出到字符串?
java - 如何在 Java 中将 2010-12-15T16:26:49.841-08:00 转换为 GregorianCalendar?
我有一个字符串日期“2010-12-15T16:26:49.841-08:00”,我需要将其转换为 Java 中的 GregorianCalendar。你怎么做到这一点?
Jesper回答的解决方案
使用 joda time 的解决方案代码:
python - Python - 将日期的字符串表示形式转换为 ISO 8601
在 Python 中,如何转换这样的字符串:
2010 年 12 月 16 日星期四 12:14:05 +0000
到 ISO 8601 格式,同时保持时区?
请注意,原始日期是字符串,输出也应该是字符串,而不是datetime
类似的东西。
不过,我使用第三方库没有问题。
java - 解析 DateFormat 时的 Java 时区
我有如下解析日期的代码:
它工作正常,突然间,这停止了工作。事实证明,管理员在服务器上进行了一些配置更改,并且日期当前返回为“2010-12-27T10:50:44.000-08:00”,上述模式无法解析。我有两个问题:
第一个是什么模式会解析 JVM 以上述格式返回的日期(具体来说,只是 '-08:00' 作为时区)?其次,究竟应该在哪里更改 linux RHEL 5 服务器上的此类设置,以便我们在未来了解此类更改?
fullcalendar - FullCalendar 可以更新为从 webbrowser 到服务器的 ignoreTimeZone?
我正在使用与 Java Wicket webapp 集成的 fullcalendar。
当网络浏览器的时区与服务器的时区不同时,我遇到了日期问题。
例如:Cayenne (UMT -3) 的 webbrowser 和 Paris (UMT +1) 的服务器。
我使用fullcalendar的“ignoreTimeZone = true”,因为我想保留webbrowser用户的时区数据库日历。
服务器初始化日历时:从巴黎发送到卡宴的事件
服务器发送这样的事件
{"id":"53922","title":"0123456789","allDay":false,"start":"2011-01-06T09:00:00.000+01:00"}
使用 ignoreTimeZone=true 就可以了。我们的日历是 9 点。
为了验证,我用 ignoreTimeZone=false 进行了测试。我正确地将事件定位在 5 点钟 (9 - 4 = 5)。
当用户单击一天以创建新事件时,问题就来了!
对于 12 点钟时间,从 webbrowser 发送的 JSON 值是正确的
allDay 假日期“2011-01-07T15:00:00.000Z”反馈为“dayClick”
但是,如果我想拥有来自 ignoreTimeZone 的等价物,我希望拥有 2011-01-07T12:00:00:000-03:00 格式或只是 2011-01-07T12:00:00.000
是否有可能拥有这种新的可能性?
提前感谢您的回复。
javascript - 在 Javascript 中解析 ISO 8601 日期
需要有关将具有以下结构的 ISO 8601 日期转换为 javascript 的帮助/提示。
我想像这样格式化日期:
我想保持这个解决方案尽可能干净和最小。