问题标签 [datetimeoffset]
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.
ruby - Ruby:时间和日期时间对偏移的解释不同
有谁知道为什么Time.parse
似乎误解了偏移量?
格式似乎没有任何区别:
c# - 将日期字符串解析为某个时区(支持夏令时)
好的,过去几周我一直在努力工作,但遇到了一个小问题。我不认为我的头脑现在完全能够胜任这项任务:) 所以我需要一些提示/帮助!这可能很简单,但我的头还没有点击。
用户将在 AEST 中输入日期和时间。还有一个应用程序设置“默认”时区(因为它可能需要更改),目前它设置为“澳大利亚东部标准时间”
所以我们在美国的服务器上有一个没有时区的用户字符串和一个定义的系统时区(所以本地不匹配,不能更改或使用)
现在我需要一种方式来表示“使用时区 X 解析此用户输入的字符串”我不能只输入 +10 或 +11 作为偏移量,因为日期可能在夏令时之内或之外;是的,即使在同一时区,它也会在 +10 和 +11 之间改变!
当前的 AEST 时间也可能在 DST 之内或之外,因此我不能只是将 UTC 日期转换为当前 AEST 时间并获取“zzz”字符串并将其附加,因为日期将因输入的任何内容而偏离一小时当前 DST 设置。
现在,代码实际上就是这样做的:
然后我通过检查日期是否仍然 == DateTimeOffset.MinValue 或将其转换为 UTC 并添加到数据库来检查日期是否无效,当显示时它将被转换回 AEST。然而,有些日期会延迟一个小时,而其他日期则是完美的(如预期的那样):)
解决这个问题的最优雅的方法是什么?
编辑:
为了帮助解释问题,我编写了一些测试代码作为 Windows 测试应用程序:
这是什么输出?
请注意,小时减一并且偏移量不同。此外,如果我们只是将输入的日期更改为:
我们得到:
使用相同的代码只是输入不同的日期,这非常好。
发生这种情况是因为当前 DST 设置和输入日期的 DST 设置不同,这就是我想要的解决方案:)
把它想象成鸡和蛋的问题。在解析输入的字符串之前,我需要正确的时区数据,只有在我解析完字符串后才能获得(因此将是一个精心设计的解决方案)
或者我需要 .NET 使用 myTimeZone 对象解析字符串,以便它知道将其设置为自己的内容,但我看不到任何执行此操作的函数,它们都采用已经解析并设置的 datetime 或 datetimeoffset 对象
所以我正在寻找其他人可能已经完成的优雅解决方案?我肯定不会是唯一注意到这一点的人吗?
编辑2:
好的,我已经制作了一个“工作”功能来解决我认为的问题,这是一个示例(将文本框添加到 ac# windows 应用程序并使用下面的代码来测试自己):
和输出:
唯一的问题是,如果用户输入的日期在 DST 的更改时间是正确的,它仍然可能有一个小时的时间,因为它只是读取当前的偏移量并使用它,然后检查它是否应该是夏令时或不是,如果它在那里,它会读取不正确。但是,它比我现在拥有的要好几英里。
谁能帮我清理这个功能?这是我需要的最佳路线吗?想法?
php - 根据服务器 UTC 偏移量和用户 UTC 偏移量更改当前用户时区
我用 php 编写了一个 twitter 网络服务。当用户登录时,我会收到此节点:
我必须更改脚本的时区,使其适应用户的实际时区。我为此找到的唯一 php 函数是:date_default_timezone_set($timezone_identifier)但它不会让我使用 -18000 作为 $timezone_identifier 参数。
那么,如何根据两个值更改当前用户时区:服务器 UTC 偏移量和用户 UTC 偏移量
顺便说一句,这就是我获取服务器 UTC 偏移值的方式:
有任何想法吗?谢谢!
php - 生成和排序时区区域
如何根据http://php.net/manual/en/timezones.php中的区域列表输出时区偏移量?
理想情况下,我希望它以 UTC-12:00 到 UTC+12:00 格式“安排”。
所以,
它当然应该在其输出中匹配http://en.wikipedia.org/wiki/List_of_tz_database_time_zones ......
Q2:是否有一些标准化的顺序可以显示这个列表?当然,GMT-11 到 GMT+12,但由于许多区域重叠,我应该如何显示这些?所有这些区域都将成为一个下拉列表的一部分:
mysql - 如何在 MySQL 服务器中使用 DATETIME 存储 GMT 偏移量
我在 MS SQL Server 2008 中使用 C#
现在我想迁移到 MySQL 服务器 5.5
但我不知道如何将
GMT offset
值存储在 MySQL 服务器的什么数据类型中?请帮我将 C# 的数据类型存储
DateTimeOffset
到MySQL server
有人请帮帮我吗?
谢谢, 钦坦
datetime - 从本地服务器迁移到 Azure:TIMEZONE UTC。怎么解决?
我设计我的应用程序时考虑到,根据规范,它应该在位于意大利的服务器上运行,并且客户只能是意大利人。
大约一个月前,我的老板决定把它全部放在 Azure 上。
一切都很顺利。唯一给我带来问题的是时间服务器是 UTC 的事实。
解决方案是:
一个简单的
将启动脚本修改为服务器时间( http://netindonesia.net/blogs/wely/archive/2011/06/26/setting-timezone-in-windows-azure.aspx )
B) 更费力
更改以使任何应用程序使用 UTC 并显示正确转换为本地时间的时间。
如果我寻求解决方案我的疑问是,服务器设置了不同的时区这一事实可能会以某种方式与 Azure 产生冲突。
这是真的?
c# - System.DateTime 和 System.DateTimeOffset 之间的区别
谁能解释 C#.NET 中 System.DateTime 和 System.DateTimeOffset 之间的区别?哪个最适合与来自不同时区的用户一起构建 Web 应用程序?
javascript - 使用 JavaScript 为日期添加小时和分钟
我正在建立一个基于世界各地时区的会议日历。我的问题是如何在 JavaScript 中从用户选择的日期中添加或减去时区。
例如,在选择表单上,用户将从表单中选择日期:然后我会得到结果并转换为如下日期......
我想给这个对象加上午夜 12 点。
然后,我读入了一个 XML,它在两个城市之间的字符串中获取时区差异:例如喀布尔的“+0430”或纽约的“-0400”(夏令时)。这是基于格林威治标准时间,。
然后我计算两个城市之间的时区差异:这将返回字符串“830”。(我假设我必须将其作为日期对象返回?)。我完成了这部分返回一个字符串。我正在处理字符串。
然后我想循环播放一天中的 24 小时,将喀布尔设置为午夜 12 点,然后循环播放。我很可能会弄清楚这一点-也就是说,在循环时将日期设置为整个小时。
我的问题是从喀布尔轻松减去“830”,看看纽约的会议时间是多少。
如果我可以从喀布尔时间中减去小时和分钟,那将是理想的。我注意到这里有人减去 JavaScript 中的小时数,而不是分钟数。顺便说一句,那个帖子对我不起作用。
我用没有分钟的字符串做了这个,但我搞砸了分钟。必须有一个更简单的方法。
我会采用原生 JavaScript 或 jQuery 的解决方案。
同样,我需要在某个日期减去/添加小时和分钟的时区差异。
javascript - 将顶部/左侧偏移坐标转换为日期/时间
我构建了一个网格,然后使用以下“showCoordinates”函数来计算可拖动元素在网格上的位置。
我想将单元格坐标转换为日期(7 天 - 星期日到星期六)和时间(这可能更复杂。我认为使用 if..else 语句会更简单(如果 cellColumn = 1 然后 Day = Sunday 等) ...)
建议?
sql-server - 如何在 Visual C++ 应用程序中读取 MSSQL DateTimeOffset 列?
我有一个使用 ADO 访问 Microsoft SQL Server 数据库的 Visual C++ (MFC) 应用程序。我想开始使用 DateTimeOffset 列,但我遇到了一个异常。
这是一个代码片段:
分配Value
给_variant_t
throws 0x80020008 Bad variable type
。
fieldPtr->Type
DateTimeOffset 字段为 146。可以理解,由于 ADO 2.8 可能早于这种列类型,因此 146 不在DataTypeEnum
. 但是,我知道我可以在经典的 ASP(也是 ADO 2.8)中访问这些字段。
如何访问此列?