DartやFlutterでアプリを開発する際、日付や時刻の取得、日時の加算・減算、タイムゾーン変換、文字列からの変換などは頻出のタスクです。
これらの日付・時間に関する操作を一手に引き受けるのが「DateTimeクラス」です。
本記事は、当ブログで解説している DateTime に関連した詳細記事を体系的にまとめたロードマップ(ピラーページ)です。目的に応じた操作方法を探すリファレンスマップとしてご活用ください!
DateTimeクラスの基本オブジェクトと定義
日時データを生成するための初期設定や、クラス自体が持つ基本的なプロパティ・定数についての解説です。
- DateTimeクラスのコンストラクタ(現在日時、指定日時の生成)
- DateTimeクラスの主要プロパティ(年、月、日、曜日などの個別取得)
- DateTimeクラスに定義されている便利な定数(月の名称や曜日の数値)
日時の計算(加算と減算)
「3日後」「1時間前」のように、日時に対して時間を足したり引いたりする基本的な計算方法です。
日時の比較と前後判定
2つの日時を比較して、どちらが未来か過去か、あるいは同時刻かを判定するための条件式メソッドです。
- isAfterメソッド(指定した日時より後か判定)
- isBeforeメソッド(指定した日時より前か判定)
- isAtSameMomentAsメソッド(指定した日時と同時刻か判定)
- compareToメソッド(2つの日時の大小比較・ソート用)
日時の変換とパース(文字列解析)
タイムゾーンの変更、ISO8601規格への文字列化、テキストからの日時読み込みなど、実務のデータ通信や保存で多用される変換メソッドです。
- タイムゾーンの変換:toLocal() / toUtc() メソッドの使い方
- ISO8601規格の文字列に変換:toIso8601String() メソッドの使い方
- 日時の差分(期間)を算出:difference() メソッドの使い方
- テキストから日時に復元:parse() / tryParse() メソッドの使い方
まとめ
日時の操作は、アプリケーションでデータ保存、画面表示、タイマーなどなど必要になる重要な部分です。
Dartの DateTime クラスが提供するこれらのメソッドを適切に組み合わせることで、時差の考慮や比較処理を正確に実装できるようになります。日時の操作で困った際は、いつでもこのマップから各解説記事へ飛んで確認してください!


コメント