5

NSDate からタイムゾーンの略語 (UTC、EET など) を取得する方法はありますか? 2012-08-26 02:54:50 +0200 などの文字列から NSDate を取得しており、この日付のタイムゾーンを表示する必要があります。

現在それをやっています:

NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease];
[formatter setDateFormat: @"yyyy-MM-dd HH:mm:ssZZZ"];
NSDate *isoDate = [formatter dateFromString: isoTime.value];
NSInteger offset = [[NSTimeZone defaultTimeZone] secondsFromGMTForDate: isoDate];
NSTimeZone *timeZone = [NSTimeZone timeZoneForSecondsFromGMT: offset];

しかし、timeZone の省略形で GMT+03:00 を取得していますが、これは EET である必要があります。入手する方法はありますか?

4

1 に答える 1

7

AnNSDateはタイムゾーンに依存しません。本質的にタイムゾーンはありません。したがって、タイムゾーンを取得することはできません。

secondsFromGMTForDate:指定された日付のGMTからのそのタイムゾーン(あなたの場合はデフォルトのもの)のオフセットを返します。日付に関する情報ではなく、日付に依存する可能性がある情報を返しNSTimeZoneます (たとえば、タイム ゾーンが夏時間を尊重している場合)。

于 2012-08-26T01:30:41.100 に答える