0

GMT形式のNSDateオブジェクトを現在のロケール/デバイス設定の日付形式に変換するにはどうすればよいですか?

たとえば、デバイスが米国にあり、PDTタイムゾーンにある場合、GMT時間を同等のPDT時間に変換したいと思います。

4

2 に答える 2

1

厳密には、タイム ゾーンの概念がまったくないため、NSDateを別のタイム ゾーンに変換することはできません。NSDateオブジェクトは、タイム ゾーンに関係なく、(絶対) 時間内のNSDate1 つのポイントを表すだけです。

ユーザーに日付を表​​示したいときはいつでも、NSDateFormatter. デフォルトでは、ユーザーのタイムゾーンで時刻が自動的に表示されます。これは でオーバーライドできます-[NSDateFormatter setTimeZone:]

于 2011-04-06T12:02:42.483 に答える
0

適切なタイムゾーンで渡すNSDateメソッドを使用するだけです。descriptionWithCalendarFormat:timeZone:locale:このメソッドを使用するdescriptionと、現在のタイムゾーンで日付/時刻が取得されます (したがって、デバイスが PDT に設定されている場合、時刻は PDT になります)。

于 2011-04-06T07:24:33.403 に答える