DartのDateTimeクラスプロパティについてメモ書き。
プロパティ一覧
DateTimeクラスのプロパティについて記載。
プロパティを組み合わせて日時の表示形式を設定する。
公式はこちら。
プロパティを取得するためのDateTImeクラスのコンストラクタはこちら。
| プロパティ | 型 | 説明 |
|---|---|---|
| year | int | 年 |
| month | int | 月 |
| day | int | 日 |
| hour | int | 時刻 |
| minute | int | 分 |
| second | int | 秒 |
| millisecond | int | ミリ秒 |
| microsecond | int | マイクロ秒 |
| millisecondsSinceEpoch | int | 1970/1/1から指定日時までをミリ秒で取得 |
| microsecondsSinceEpoch | int | 1970/1/1から指定日時までをマイクロ秒で取得 |
| isUtc | bool | UTC(協定世界時)の場合はTrue |
| timeZoneName | String | タイムゾーン名 |
| timeZoneOffset | Duration | ローカルタイムとUTCの差分を取得 |
| weekday | int | 曜日を数値で取得。月曜:1〜日曜:7 |
year、month等の日時プロパティはint型なので注意。例えば3月をmonthプロパティで表示する場合はMM形式の「03」ではなく「3」と表示される。
月をMM形式で取得したい場合は、String型に変更して桁数を指定する。こちらはmonthプロパティの章に記載しておく。
DateTimeクラスの「DateTime.now();」コンストラクタで現在時刻をインスタンス化し、各プロパティを確認していく。
final dateTime = DateTime.now();以降確認はインスタンス変数dateTimeで行う。
print(dateTime);
2023-03-08 07:43:54.670549year
yearプロパティを確認するため、以下を実行。
print(dateTime.year);出力結果。
2023month
monthプロパティを確認するため、以下を実行。
print(dateTime.month);出力結果。
32桁固定のMM形式で取得したい場合はtoString()メソッドでString型に変更し、padLeft()メソッドでMM形式にする。
// padLeft()の第1引数に桁数、第2引数に左側に埋める"文字"を渡す
print(dateTime.month.toString().padLeft(2, "0"));出力結果。
03day
dayプロパティを確認するため、以下を実行。
print(dateTime.day);出力結果。
8hour
hourプロパティを確認するため、以下を実行。
print(dateTime.hour);出力結果。
7minute
minuteプロパティを確認するため、以下を実行。
print(dateTime.minute);出力結果。
43second
secondプロパティを確認するため、以下を実行。
print(dateTime.second);出力結果。
54millisecond
millisecondプロパティを確認するため、以下を実行。
print(dateTime.millisecond);出力結果。
670microsecond
microsecondプロパティを確認するため、以下を実行。
print(dateTime.microsecond);出力結果。
549microsecondsSinceEpoch
microsecondsSinceEpochプロパティを確認するため、以下を実行。
print(dateTime.microsecondsSinceEpoch);出力結果。
1678229034670549millisecondsSinceEpochも基本同じなので割愛。
isUtc
isUtcプロパティを確認するため、以下を実行。
print(dateTime.isUtc);出力結果。コンストラクタでUTCを指定しない場合はローカルタイムなのでfalse。
falsetimeZoneName
timeZoneNameプロパティを確認するため、以下を実行。
print(dateTime.timeZoneName);出力結果。
JSTtimeZoneOffset
timeZoneOffsetプロパティを確認するため、以下を実行。
print(dateTime.timeZoneOffset);出力結果。
9:00:00.000000weekday
weekdayプロパティを確認するため、以下を実行。
print(dateTime.weekday);出力結果。
ちなみに2023/3/8は水曜日(月曜から数えて3番目)。
3

コメント