问题标签 [dst]
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.
java - 在 Java 和 C++ 之间同步日期
我有一个在未连接到互联网的设备上运行的应用程序。操作系统是 Windows XP。有 C++ 模块和 Java 模块通过套接字进行交互。Java 部分需要根据其日期和时间从 C++ 部分获取文件。当 DST 开关到达时,他们停止工作。似乎 C++ 忽略了 DST,因为 Windows 没有下载每年的 DST 更新,而 Java 根据它拥有的一些内部表来处理 DST。我正在编程的设备必须能够连续运行,与网络断开连接并在不同的国家/地区运行。我的问题是:如何让 Java 和 C++ 都忽略外部更新并根据一些预定义的 DST 表进行操作。
c# - 如何在 Windows Mobile 上修改我所在时区的夏令时?
我运行 Windows Mobile 6 的手机突然决定每次将其连接到我的 PC 时都会中断一个小时。我尝试在控制面板中使用时区设置,但无济于事。
我得出的结论是问题的核心在于我的时区的夏令时配置。
我找不到任何实用程序让我在 Windows Mobile(Windows 中的ala tzedit
)上编辑它。我决定自己写一些东西,但我找不到合适的关键字来搜索!我能想到的关于“Windows mobile”和“夏令时”的所有变体都会回到 2007 年对美国 DST 所做的更改,而不是 API!
有人对我应该寻找哪些功能有任何建议吗?我想用 C# 写这个,但我希望 P/Invoke 应该让我访问常规 API 的东西。
更新:我最终自己编写了应用程序,使用TimeZoneInformation
下面建议的函数。谢谢!
另一个更新 [大约 2 周后]:如果您需要这样的东西,我将程序和源代码放在http://shalom.craimer.org/projects/上。我希望这可以为某人节省 5 分钟或其他时间。
php - 如何使用 PEAR::Date 获取时区小时偏移并考虑 DST?
给定夏季日期,我正在尝试从 UTC 获取偏移时间。我的系统时间设置为 America/Los_Angeles。
我有以下内容:
这将打印“-8”;它不应该显示'-7'吗?
也打印'-8'。
我究竟做错了什么?
java - 确定夏令时 (DST) 在 Java 中是否在指定日期处于活动状态
我有一个 Java 类,它接受一个位置的纬度/经度,并在夏令时打开和关闭时返回 GMT 偏移量。我正在寻找一种简单的方法来确定当前日期是否在夏令时,以便在 Java 中应用正确的偏移量。目前我只对美国时区执行此计算,尽管最终我也想将其扩展到全球时区。
c++ - 在 Windows XP/Server 2003 下将新旧本地时间转换为 UTC
我的应用程序将过去和现在的日期从本地时间转换为 UTC。
我需要确保在正确处理过去日期的同时,我将尊重 Windows 的任何未来 DST 更新。
该应用程序是用 C++ 编写的,在 Server 2003 上运行。
我研究过的选项:
gmtime()
并且localtime()
对于过去的日期并不总是正确的,因为它们只会遵守当前的 DST 规则。(相关的SO问题)tz 数据库已退出,因为它需要单独的手动更新。
GetTimeZoneInformationForYear()
因为它需要 Vista/Server 2008,所以退出了。过去的 DST 信息存储在注册表中,但我正在寻找更高级别的内容。
升压
date_time
:- 类
us_dst_rules
已弃用,并且在操作系统更新时不会更新。 - class
dst_calc_engine<>
是它的继任者,但它也不尊重操作系统更新。
- 类
所以...
...还有其他人使用原始注册表解决方案来执行此操作吗?
...还有其他建议吗?
(编辑:发现dst_calc_engine
不支持 DST 更新)
.net - UTC 和夏令时方案
我正在使用 UTC 在数据库中存储数据和时间值。这些值在客户端或每个客户端时区转换为本地时间。我从MSDN 文章中了解了这些场景,其中显示来自 UTC 的时间似乎在夏令时造成了问题。
居住在美国东海岸的人输入了诸如“Oct 26, 2003 01:10:00 AM”之类的值。
1) 在这个特定的早晨,由于夏令时,凌晨 2:00,本地时钟重置为凌晨 1:00,创建 25 小时制的一天。由于在上午 1:00 和凌晨 2:00 之间的所有时钟时间值在那个特定的早晨出现两次——至少在美国和加拿大的大部分地区,计算机真的无法知道上午 1:10 的含义——切换前发生的事件,或夏令时切换后 10 分钟发生的事件。
2) 同样,问题发生在春天,在某个特定的早晨,没有凌晨 2:10 这样的时间。原因是在那个特定的早晨 2:00,本地时钟的时间突然变为凌晨 3:00。在这 23 小时的一天中,整个 2:00 小时都不会发生。
您是如何处理第 1 种情况的,当您可能有 4 个事务时,两个在切换之前,两个在切换之后在夏令时?如何向用户显示交易的时间,因为由于班次,最后两笔交易可能比前两笔交易显示的时间更早。?有时,它可能被证明是不合逻辑的,例如:在邮件链中。
添加:
要添加有关上下文的更多信息,RIA 应用程序(例如 Silverlight/Flash)在客户端(或任何通过 Web 服务与服务器对话的客户端应用程序)上运行,允许用户选择交付时间或使用 pc 本地时间安排时间。
如果我可以检查给定的输入时间是否无效,我可能会提醒用户。此外,对于旅行者来说,需要在时间点找到时区,而不是基于用户选择,因为他们可能会在区域之间移动,将他们的时区保存在用户配置文件中也无济于事。
一些用于评估输入时间的 C# 测试示例:
ruby-on-rails - 为什么这个 rails 查询的行为会因时区而异?
我有一个基于 Rails 时间的查询,它有一些奇怪的时区敏感行为,尽管据我所知我使用的是 UTC。简而言之,这些查询给出了不同的答案:
数据库实际上包含一个在最后一小时创建的模型,模型总数为 280。所以只有第一个查询是正确的。
但是,在 environment.rb 我有:
系统时区(由“日期”报告)是 BST(即 GMT+1) - 所以不知何故,这最终会被视为 UTC 并中断查询。
这给我带来了各种各样的问题,因为我需要将在不同时间传递的查询参数化为一个动作(然后使用 Time.parse() 进行转换),即使我以 UTC 时间发送,这也会“关闭一小时” ' DST 问题作物很多。即使使用 '.gmtime()' 似乎并不总是能解决它。
显然,差异是由某处的隐式转换导致 BST 被错误地视为 UTC 造成的,但为什么呢?Rails 不是以 UTC 格式存储时间戳吗?Time 类时区不知道吗?我正在使用 Rails 2.2.2
那么这里发生了什么 - 围绕它进行编程的安全方法是什么?
编辑,一些附加信息来显示 DB 和 Time 类在做什么:
r - DST 前后的 POSIXct 时间?
我想从 POSIX 日期中减去 1 天,并在 DST 前后同时结束。
例如,当我添加一天时:
但是当我过去时,它会抵消:
处理 DST 前后绝对时差的最佳方法是什么?通常我通过将时间转换为字符串并单独处理它们来处理这个问题,这样就不会应用 DST。
java - 在 Java 中获取时区的夏令时转换日期
我想知道用 Java 最简单的方法来获取未来夏令时将发生变化的日期列表。
一种相当不雅的方法是简单地迭代数年的时间,针对 TimeZone.inDaylightTime() 测试它们。这会起作用,而且我不担心效率,因为它只需要在我的应用程序每次启动时运行,但我想知道是否有更简单的方法。
如果您想知道我为什么要这样做,那是因为我有一个 javascript 应用程序需要处理包含 UTC 时间戳的第三方数据。我想要一种在客户端从 GMT 转换为 EST 的可靠方法。请参阅Javascript -- Unix Time to Specific Time Zone我已经编写了一些 javascript 可以做到这一点,但我想从服务器获取精确的转换日期。
javascript - 使用“new date()”JavaScript 函数时考虑控制面板日期和时间
我正在使用“new date()”对象在 JavaScript 函数中获取客户端日期。但是这个对象正在考虑系统控制面板中为日期和时间控件设置的属性。
例如,如果我选中系统(控制面板)的日期和时间控制复选框“自动调整夏令时更改的时钟”,那么我将根据夏令时获取日期(来自 JavaScript),如果我取消选中它,我正在根据标准时间获取日期。
我需要的是从 JavaScript 函数中获取日期,而不考虑控制面板的日期和时间控件。有没有办法做到这一点?