Dart 現在日付を取得する

Dart 現在日付を取得する

Dartで、現在日付を取得するコードを記述してます。「DateTime.now()」で現在日時を取得して、「DateFormat」を使って日付のみに変換することで可能です。

環境

  • OS windows11 home
  • Dart 2.18.4

現在日付を取得

現在日付を取得するには
1. 「pubspec.yaml」にパッケージ「intl」を追加
2. 「DateTime.now()」で現在日時を取得
3. 「DateFormat」で日付にのみ変換
で可能です。

まずは、「pubspec.yaml」に「intl」を追加します。

name: sample
dependencies:
  intl: ^0.17.0
environment:
  sdk: '>=2.10.0 <3.0.0'

実際に、実行してみます。

import 'package:intl/intl.dart';

void main() {
  DateFormat outputFormat = DateFormat('yyyy-MM-dd');

  DateTime today = DateTime.now();

  print(today);
  // 2022-11-30 11:56:03.800157

  print(outputFormat.format(today));
  // 2022-11-30
}

実行結果を見ると、取得されていることが確認できます。

明日・昨日

ちなみに、明日や昨日の日付を取得する場合は「add(Duration(days: 日付))」で日付を加算または減算すると取得することができます。

import 'package:intl/intl.dart';

void main() {
  DateFormat outputFormat = DateFormat('yyyy-MM-dd');

  DateTime today = DateTime.now();

  print(outputFormat.format(today.add(Duration(days: 1))));
  // 2022-12-01

  print(outputFormat.format(today.add(Duration(days: -1))));
  // 2022-11-29
}