NSDate にタイムゾーン情報がないことはわかっています。
ただし、それらを適切に操作する方法を理解しようとしています。
現時点では、日付をオブジェクトに渡しています。その日付は、時刻 00:00:00 にユーザーが選択した日付です。
つまり、ユーザーが 10 月 21 日にヒットした場合、渡される NSDate は次のようになります。2013/10/21 00:00:00。
ただし、2013/10/20 23:00:00 ではありません。(1時間前)。
さて、これはそれらをフォーマットしたり表示したりすることではありません。私はちょうどNSDatesを使用しています。
NSDateComponents
と を使用して日付を作成していますNSCalendar
。
私の質問は...
NSDate
ローカル タイム ゾーンで が実際に参照している日付を確認するにはどうすればよいですか?
特定の日付の 00:00:00 と 23:59:59 の UNIX タイム スタンプを送信する必要があります。ただし、時、分、秒を 0、0、0 に設定した時点で、現在のタイム ゾーンで真夜中を取得していません。GMT で真夜中を取得しています。
これは私が欲しいものではありません。
修理済み?
わかりました、私はそれを修正しました...と思います。少なくとも、それは私がやりたいことをやっています。
トリックは...
NSTimeZone *timeZone = [NSTimeZone localTimeZone];
[dateComponents setSecond:timeZone.secondsFromGMT];