问题标签 [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 回答
246 浏览

objective-c - NSDate 结果来自 -(NSDate *)dateFromComponents:(NSDateComponents *)comps

我想用 NSDateComponents 获得一个 NSDate 对象,但是 NSDate 的时间比组件中的时间低 1 小时。

控制台输出:

我想要的是 18:xx:xx

0 投票
0 回答
293 浏览

iphone - NSTimeZone 和 NSDate 不能正常工作

我不明白如何自动设置 iPhone 的时区,以检索正确的日期,我来自意大利,现在正是:

如果我执行 [NSDate date] 来检索 iPhone 上的日期,请给我:

怎么可能不给我正确的日期?...我已经在模拟器和 iPhone 上尝试过,问题是一样的...给我两个小时的差异,所以我的问题是如何设置自动为 iPhone 用户所在的地方设置时区?

编辑:

我也试过这个:

我尝试设置 GMT、LocalTimeZone、systemtimezone 和 defaultimezone 的时区,但日期没有改变……我能做什么?

0 投票
6 回答
26598 浏览

ios - 如何使用 NSTimeZone -timeZoneWithName: 与 Rails ActiveSupport 中的城市名称?

如果我只有曼谷东京这样的城市名称,我该如何提供一个时区参数, [NSTimeZone timeZoneWithName:@"Asia/Tokyo"]其中它也有大陆并在城市前面有斜线?

我已经试过了[NSTimeZone timeZoneWithName:@"Tokyo"],还是不行。

0 投票
1 回答
180 浏览

objective-c - 如何最好地调试 NSDate / NSTimezone 相关代码

我知道这NSDate不代表时区,但也许有人可以建议我如何最好地调试它与其他类的关系,NSDatePicker例如CalCalendarStore.

例如,我想将日期选择器的日期设置为 01-01-2012。我做这样的事情:

这在我的日期选择器中运行良好,但是一旦我尝试调试与日期相关的代码,事情就会变得非常混乱(与 TZ 相关的一小时甚至一天的变化)。有人可以建议我如何做到这一点吗?

如果我应该使用日期格式化程序(可能!),我应该如何做到这一点,以便我可以轻松调试而不会过多地混淆代码?

0 投票
1 回答
132 浏览

iphone - UILocalNotification setTimeZone 到 AM/PM

如何将时区设置上午UILocalNotification/下午。

0 投票
1 回答
367 浏览

cocoa-touch - NSTimeZone 列表包含重复的时区?

在列出[NSTimeZone knownTimeZoneNames]iPhone 4 返回的所有时区时,有些时区似乎是功能重复的。它们主要按城市列出。例如,我希望 America/Chicago 和 America/Indiana/Knox 都等同于中央时区(有关时区参考,请参见此处)。我错过了它们之间的区别吗?还是只是 Apple 通过让用户按城市选择他们的区域来对用户友好?

0 投票
1 回答
676 浏览

objective-c - iOS - TimeZone issue with difference between 2 NSDates

I've been using NSCalendar and NSDateComponents to return the difference (in days) between 2 dates. Here's the code I'm using to get that.

The weird part is that this works perfectly during the early part of the day, but once I reach around 6 or 7PM (I'm using Mountain Time, which is GMT -7 I think), it stops working correctly. Instead of a returning the correct difference, it returns the difference minus 1 day. so For example, it returns -1 instead of 0, or 1 instead of 2.

I'm guessing this is a time zone issue. Does anyone know how to fix it? I've tried setting the timeZone for my NSCalendar and the NSDateComponents to GMT, local and system, but none seem to work.

Any ideas?

Thank you!

0 投票
1 回答
391 浏览

objective-c - 时区支持值-objective-c-cocoa-touch

我一直在寻找一段时间,并进行了大量的研究和试验,但我找不到一种方法来检索存储在 iOS 设备上的时区支持的用户设置中的值。

我研究了 NSTimeZone 便捷方法 +systemTimeZone、+resetSystemTimeZone、+defaultTimeZone、+localTimeZone。我什至完全理解它们之间的区别,以及我们如何为每个应用程序设置自己的默认时区,以及首次调用默认值如何返回 system. 然后系统会被缓存,如果设备更改时区,则需要重置。

问题是,systemTimeZone 始终是设备实际所在的位置,而不是在时区支持下的设备设置中设置的值。

我什至研究过 [[NSCalendar currentCalendar] timeZone] 以及 [[NSCalendar autoupdatingCurrentCalendar] timeZone]]。

我什至试过 [[[NSLocale currentLocale] objectForKey:NSCurrentCalendar] timeZone] 和 [[[NSLocale autoupdatingCurrentLocale] objectForKey:NSCurrentCalendar] timeZone]

没有返回设备的 Settings.app -> Mail, Contacts, Calendars -> Time Zone Support -> Time Zone 的值。

有谁知道如何检索 Settings.app -> Mail, Contacts, Calendars -> Time Zone Support -> Time Zone 设置的值?

谢谢和干杯!

0 投票
1 回答
44 浏览

objective-c - UITableView 标头中的 NSDates 已更改

因此,我在 UITableView 中使用日期数组作为部分标题。我的数据在数组中的日期如下

但是当我运行该应用程序时,部分标题全部移回了一天,因此它们如下:

是什么赋予了?我从服务器中提取的数据特定于 timeZone。我们知道何时使用我们的应用程序以及在哪一天使用(想想旅行马戏团)。

我确信这与 NSTimeZone 有关,所以我尝试了以下方法,但没有成功。

有谁知道有解决办法吗?

0 投票
2 回答
2224 浏览

objective-c - 获取特定时区中两个 NSDate 日期之间的天数

我在这里找到了计算两个日期之间天数差异的代码。
我写了一个方法:

这种方法有一个问题:它不能考虑时区的事情。即使我添加这样的一行:

我的测试代码是这样的:

结果是:

2012-09-03 23:00:00 和 2012-09-04 01:00:00 之间的天数差异为:0 天

我想通过两个日期之间的午夜数得到 1 天。我的时区是 GMT +8。但是这个计算是基于格林威治标准时间的,所以我得到了错误的天数。有没有办法解决这个问题?谢谢你。


Scott Lemmon的方法可以解决我的问题。我像这样重写我的代码: