私は時間をゼロに設定してNSDateのNSTimeIntervalを持たせようとしているので、一日の始まりですが、GMTではなくGMT + 2である私のタイムゾーンを常に与えてください、私はこれをやっています:
これは、NSDate で 1 日の開始を設定するカテゴリです。
#define DATE_COMPONENTS (NSYearCalendarUnit| NSMonthCalendarUnit | NSDayCalendarUnit | NSWeekCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit | NSWeekdayCalendarUnit | NSWeekdayOrdinalCalendarUnit)
#define CURRENT_CALENDAR [NSCalendar currentCalendar]
- (NSDate *) dateAtStartOfDay
{
NSDateComponents *components = [CURRENT_CALENDAR components:DATE_COMPONENTS fromDate:self];
components.hour = 0;
components.minute = 0;
components.second = 0;
return [CURRENT_CALENDAR dateFromComponents:components];
}
それから私はこれをします:
NSTimeInterval now = [[[NSDate date] dateAtStartOfDay] timeIntervalSince1970];
この NSTimeInterval を教えてください:
1375567200
私がチェックすると:
GMT 時間は次のとおりです。
GMT: Sat, 03 Aug 2013 22:00:00 GMT
Mine tiem zone: 04 agosto 2013 00:00:00 CEST GMT+2
どのように私は常に GMT 時間間隔を持つことができますか? たとえば、ニューヨーク、ローマ、リオデジャネリオで機能するソリューションを探しています。ユーザーがどこにいても gmt に nstimeinterval を提供する必要があります。誰か助けてください。