どうも、ちょげ(@chogetarou)です。
DateTimeのフォーマットのロケールを設定する方法を紹介します。
方法

DateTimeのフォーマットのロケールを設定する方法は、2つあります。
DateFormat
1つは、DateFormatのコンストラクタの引数を使う方法です。
まず、DateFormatのコンストラクタでフォーマットを指定します。
そして、コンストラクタの引数にロケールを指定します。
final formatter = DateFormat.yMd('ロケール'); //引数にロケールを指定
コンストラクタの引数に指定したロケールで、フォーマットされるようになります。
使用例
import 'package:intl/intl.dart';
void main() {
var now = DateTime.now();
final formatter = DateFormat.yMd('en_US');
var formatNow = formatter.format(now);
print(formatNow); //3/29/2022
}
initializeDateFormatting
もう1つは、initializeDateFormattingを使う方法です。
まず、intlパッケージの「date_symbol_data_local.dart」をインポートします。
import 'package:intl/date_symbol_data_local.dart';
そして、initializeDateFormattingを呼び出します。
initializeDateFormattingの引数には、ロケールを指定します。
initializeDateFormatting('ロケール');
initializeDateFormattingを呼び出した後は、引数に指定したロケールがフォーマットに設定されます。
使用例
import 'package:intl/intl.dart';
import 'package:intl/date_symbol_data_local.dart';
void main() {
var now = DateTime.now();
initializeDateFormatting('es');
final formatter = DateFormat.yMd();
var formatNow = formatter.format(now);
print(formatNow); //3/29/2022
}
まとめ
DateTimeのフォーマットのロケールを設定する方法は、次の2つです。
- DateFormatを使う方法
- initializeDateFormattingを使う方法
コメント