flutter intl 时间格式化
时间: 2023-12-25 12:04:21 浏览: 33
Flutter Intl 是一个用于在 Flutter 应用程序中轻松本地化和翻译文本的库。要在 Flutter Intl 中格式化时间,可以使用 `DateFormat` 类。以下是一个示例:
首先,在 `pubspec.yaml` 文件中添加 `flutter_localizations` 依赖:
```yaml
dependencies:
flutter_localizations:
sdk: flutter
```
然后在 `MaterialApp` 中添加 `localizationsDelegates`,并将 `DateFormat` 添加到 `GlobalMaterialLocalizations` 中:
```dart
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:intl/intl.dart';
MaterialApp(
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
// 添加 DateFormat
DefaultCupertinoLocalizations.delegate..moorDateFormatter = DateFormat.yMd('zh'),
],
supportedLocales: [
// 添加支持的语言
const Locale('zh', 'CN'),
const Locale('en', 'US'),
],
home: MyHomePage(),
);
```
最后,在需要格式化时间的地方,可以像下面这样使用 `DateFormat`:
```dart
import 'package:intl/intl.dart';
final DateTime now = DateTime.now();
final DateFormat formatter = DateFormat('yyyy-MM-dd');
final String formatted = formatter.format(now);
print(formatted);
```
这将打印出当前日期的格式化字符串,例如 `2022-01-01`。你可以根据需要更改日期格式。