如何获取当前日期(不包括小时和分钟)?

9 浏览
0 Comments

如何获取当前日期(不包括小时和分钟)?

我在文档中只看到了DateTime.now(),但它返回的还有时间间隔,而我只需要日期。

0
0 Comments

如何获取当前日期(不包含小时和分钟)?

问题出现的原因是,希望能够获取当前日期,但不需要包含小时和分钟。

解决方法如下:

1. 首先,在pubspec.yaml文件中添加依赖项:

dependencies:

intl: ^0.17.0

2. 然后,在代码中导入intl包:

import 'package:intl/intl.dart';

3. 接下来,使用DateTime类获取当前日期:

final now = new DateTime.now();

4. 使用DateFormat类对日期进行格式化,以去除小时和分钟:

String formatter = DateFormat('yMd').format(now);

以上代码将返回当前日期的字符串形式,例如:"28/03/2020"。

如果你想知道如何记住日期格式(DateFormat('yMd')),你可以在Flutter文档中找到答案。

DateFormat类允许用户从一组标准日期时间格式中选择,也可以在特定区域设置下指定自定义模式。

以下是从文档中直接取出的一些格式示例:

new DateFormat.yMd() -> 7/10/1996

new DateFormat('yMd') -> 7/10/1996

new DateFormat.yMMMMd('en_US') -> July 10, 1996

new DateFormat.jm() -> 5:08 PM

new DateFormat.yMd().add_jm() -> 7/10/1996 5:08 PM

new DateFormat.Hm() -> 17:08 // 强制使用24小时制

希望这能帮助你以任何格式获取日期。

这个示例会与intl包一起正常工作。

0
0 Comments

如果你只想获取日期而不包括时间戳,你可以使用intl包来帮助实现。

main() {

var now = new DateTime.now();

var formatter = new DateFormat('yyyy-MM-dd');

String formattedDate = formatter.format(now);

print(formattedDate); // 2016-01-25

}

这需要引入intl包:

dependencies:

intl: ^0.16.1

最后导入:

import 'package:intl/intl.dart';

这样就可以得到当前的日期(不包括小时和分钟)了。

0
0 Comments

问题出现的原因是需要获取当前日期(不包含小时和分钟),但DateTime.now()方法返回的日期包含了小时和分钟。

解决方法有以下几种:

1. 创建一个新的日期变量,只保留需要的部分:

DateTime now = new DateTime.now();

DateTime date = new DateTime(now.year, now.month, now.day);

在Dart中,"new"关键字是可选的。

2. 使用replaceAll()方法删除日期字符串中的"00:00:00.000":

date.toString().replaceAll("00:00:00.000", "")

3. 使用intl包来格式化日期/时间,可以自定义日期/时间格式:

import 'package:intl/intl.dart';

DateTime now = DateTime.now();

String formattedDate = DateFormat('yyyy-MM-dd').format(now);

4. 如果不想创建一个新的变量,还可以使用copyWith()方法来获取不包含小时、分钟、秒、毫秒和微秒的日期:

DateTime.now().copyWith(hour: 0, minute: 0, second: 0, millisecond: 0, microsecond: 0)

希望以上方法对您有帮助!

0