问题标签 [nstimezone]

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

objective-c - NSDateComponents 可能的时区错误?

想知道我是否发现了 NSDateComponents 的错误。

使用 NSDateComponents 计算日期并在时区之间切换时,可能会在模拟器上得到错误的日期(未在设备上测试)。

似乎它是正确的偏移量,但方向错误。要么,要么我从根本上误解了某些东西(这总是一种明显的可能性)。

样本:

将系统时间设置为 UTC 以外的时区(我的是墨西哥,UTC-05:00)

假设墨西哥,第二个日期不应该比第一个晚五个小时吗?

0 投票
2 回答
146 浏览

iphone - 如何避免系统修改时间戳,NSDate,目标c

下面是某个服务器返回的时间戳字符串

我正在执行以下操作将其转换为 NSDate

我得到

看起来 +4 已添加到原始时间戳

为什么会这样做,我该如何避免这种情况?

0 投票
1 回答
2333 浏览

objective-c - NSDate timeIntervalSinceNow 和本地时区?

我正在计算以找到设备当前所在NSTimeInterval的已知时间(GMT/UTC)和当前时间(和时区)之间的时间。futureDate

我知道它NSDate不会存储任何 timeZone 特定数据,而是在需要在设备上显示日期时计算的数据。

我的问题是,从我最初的测试(我目前在 GMT+0001)来看,NSTimeInterval返回的似乎没有考虑到我的本地时区。我是否必须手动计算时区偏移并将其从我的时间间隔中删除,鉴于我无法提供NSDate正确的时区(timeIntervalSinceDate:例如使用) ,这样做的最佳方法是什么

0 投票
1 回答
275 浏览

objective-c - startOfDay NSDate 到 GMT 的 NSTimeInterval

我正在尝试将 NSDate 的 NSTimeInterval 设置为时间为零,因此是一天的开始,但总是给我我的时区是 GMT+2 而不是 GMT,我正在这样做:

这是在 NSDate 中设置一天开始的类别:

然后我这样做:

并给我这个 NSTimeInterval:

如果我检查:

http://www.epochconverter.com

格林威治标准时间是这样的:

我怎样才能始终拥有 GMT 时间间隔?我正在寻找一个在纽约、罗马、里约热内卢工作的解决方案,例如,必须给我 nstimeinterval 到 gmt 用户在哪里,有人可以帮助我吗?

0 投票
2 回答
1036 浏览

ios - 比较 iOS 时区规则

如果用户在东部时间,我不想显示“EST”或“EDT”,但如果不是,我确实想显示它。

有没有一种简单的方法来比较 iOS 中的 TimeZone 规则?

[NSTimeZone localTimeZone]返回美国/印第安纳波利斯,但我只想知道它是否在东部。

比较数据不起作用,我只是比较secondsFromGMT吗?

编辑 比较偏移量似乎确实有效,但我不知道它是否会在以后引起问题?

0 投票
3 回答
393 浏览

iphone - 从 NSArray 搜索栏搜索

我想创建一个搜索栏,用户将只键入一部分时区,如果数组中存在,它将显示我的数组中的完整时区。例如,如果用户键入“dhaka”,搜索栏将显示完整的字符串“Asia/Dhaka”。那有可能吗?如果可能的话,请指导我的方式。非常感谢您的帮助。

0 投票
0 回答
50 浏览

ios - iOS NSCalendar NSTimezone 夏令时混乱

我正在尝试使用我的默认时区设置日期,我希望能对输出进行一些澄清。

您可以在 NSLog 输出中看到差异,调试时间戳为 11:XX,而输出显示为 09:XX。我的期望是输出也会显示 11:XX。

输出

0 投票
2 回答
1164 浏览

ios - NSTimeZone 值和语言环境

我有时区:OS X 中的中欧夏令时间(自动基于位置)。在模拟器上运行我的代码时,我得到了以下结果:

与 EDT / EST 相同 - 当我在 System -> Preferences 中将当前时间设置为 EDT 时,适当的方法会返回 EST ..

我错过了什么吗?

0 投票
1 回答
1306 浏览

iphone - NSDate 现在距离我的 ios 模拟器 1 小时

嗨,我正在创建一个 NSDate,我用它来设置选择器,但是当我将选择器日期输出到 NSLog 时,它总是比实际选择器中显示的时间晚一个小时。

同样作为测试,我注意到代码: NSDate *now = [NSDate date]; //应该给我模拟器上的当前日期和时间 NSLog(@"Date and Time now: %@", now);

NSLog 值总是比我的模拟器上显示的时间晚 1 小时。

我的问题是为什么?

提前致谢 :)

更新 - - - - - - - - - - - - - - - - - - - - - - - - - -------------------------------------------

我又做了几个测试,结果发现使用 NSGregorian Calendar 的 NSDate 返回了正确的时间,然后使用 currentCalendar 的 NSDate 关闭了 1 小时。

所以我的新问题是为什么会这样?我检查了模拟器上的设置,并且设备的日历设置为公历。这可能是由于时区差异造成的吗?如果是这样,那么我有没有办法将选择器设置为使用与用户设备相同的时区?

谢谢

0 投票
1 回答
136 浏览

cocoa - 无论系统时区如何,都在同一时区格式化 NSDates

我正在从远程源导入一些参考日期。日期表示一年中任意一天的时间(在本例中为 01/01/2000)。它们以 Unix 时间戳的形式提供。例如 946717200 代表上午 9 点。我还获得了每个位置的时区。

我正在使用以下代码将这些时间转换为与 UTC 有正确偏移的实际日期。

例如,给定输入 946717200、当前日期和 America/Los_Angeles 时区,我得到一个日期2013-10-07 16:00:00 +0000,但是当我使用 NSDateFormatter 对其进行格式化时,使用时区设置为 America/Los_Angeles,系统设置为同一时区,显示为2013-10-07T01:00:00-0700

我做错了什么?