[SwiftDate] ローカルの特定の時間の作り方

アプリケーションの中で、リージョンも含めて時間をきちんと扱うことは、意外と大変です。リージョン含めてどうやって扱うかのメモです。

日本時間の昼の12時作れますか?

DateComponentを使って、かつ、時差9時間を理解していれば一瞬です。

でも、ローカル時間のお昼となると・・・・




SwiftDateなら簡単でした。

SwiftDateは、Dateにメソッドを追加するだけではなくて、DateInRegionというstructを導入しています。

DateInRegionで、dateAtStartOfとすると、そのローカル時間を考えて処理してくれます。
お昼にするメソッドはないけど、「その日のはじめにする」と「指定時間すすめる」を組み合わせれば簡単に実装できます。

SwiftDateすごい

Swift本

SwiftにもDateとTimeZoneという概念があり、その上に、RegionやDateInRegionというものをSwiftDateでは、導入しています。
NSDate/DateやTimeZoneそのものを解説している書籍はあまり見当たりません・・・・
Swiftそのものを、以下の本で確認してもらってから、Appleドキュメントのこれとかを読んでもらうのが良いかと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です