DartのDateTimeクラスのプロパティ

Dar言語StreamクラスtoSet()メソッドDart

DartのDateTimeクラスプロパティについてメモ書き。

プロパティ一覧

DateTimeクラスのプロパティについて記載。
プロパティを組み合わせて日時の表示形式を設定する。
公式はこちら
プロパティを取得するためのDateTImeクラスのコンストラクタはこちら

プロパティ説明
yearint
monthint
dayint
hourint時刻
minuteint
secondint
millisecondintミリ秒
microsecondintマイクロ秒
millisecondsSinceEpochint1970/1/1から指定日時までをミリ秒で取得
microsecondsSinceEpochint1970/1/1から指定日時までをマイクロ秒で取得
isUtcboolUTC(協定世界時)の場合はTrue
timeZoneNameStringタイムゾーン名
timeZoneOffsetDurationローカルタイムとUTCの差分を取得
weekdayint曜日を数値で取得。月曜: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.670549

year

yearプロパティを確認するため、以下を実行。

print(dateTime.year);

出力結果。

2023

month

monthプロパティを確認するため、以下を実行。

print(dateTime.month);

出力結果。

3

2桁固定のMM形式で取得したい場合はtoString()メソッドでString型に変更し、padLeft()メソッドでMM形式にする。

// padLeft()の第1引数に桁数、第2引数に左側に埋める"文字"を渡す
print(dateTime.month.toString().padLeft(2, "0"));

出力結果。

03

day

dayプロパティを確認するため、以下を実行。

print(dateTime.day);

出力結果。

8

hour

hourプロパティを確認するため、以下を実行。

print(dateTime.hour);

出力結果。

7

minute

minuteプロパティを確認するため、以下を実行。

print(dateTime.minute);

出力結果。

43

second

secondプロパティを確認するため、以下を実行。

print(dateTime.second);

出力結果。

54

millisecond

millisecondプロパティを確認するため、以下を実行。

print(dateTime.millisecond);

出力結果。

670

microsecond

microsecondプロパティを確認するため、以下を実行。

print(dateTime.microsecond);

出力結果。

549

microsecondsSinceEpoch

microsecondsSinceEpochプロパティを確認するため、以下を実行。

print(dateTime.microsecondsSinceEpoch);

出力結果。

1678229034670549

millisecondsSinceEpochも基本同じなので割愛。

isUtc

isUtcプロパティを確認するため、以下を実行。

print(dateTime.isUtc);

出力結果。コンストラクタでUTCを指定しない場合はローカルタイムなのでfalse。

false

timeZoneName

timeZoneNameプロパティを確認するため、以下を実行。

print(dateTime.timeZoneName);

出力結果。

JST

timeZoneOffset

timeZoneOffsetプロパティを確認するため、以下を実行。

print(dateTime.timeZoneOffset);

出力結果。

9:00:00.000000

weekday

weekdayプロパティを確認するため、以下を実行。

print(dateTime.weekday);

出力結果。
ちなみに2023/3/8は水曜日(月曜から数えて3番目)。

3

コメント

タイトルとURLをコピーしました