Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 如何获取当前日期(不含小时和分钟)?_Flutter_Dart - Fatal编程技术网

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

Flutter 如何获取当前日期(不含小时和分钟)?,flutter,dart,Flutter,Dart,我在文档中看到的是Datetime.now(),但它也返回Timespan,我只需要日期。核心库中没有类可以建模没有时间的日期。您必须使用new DateTime.now() 请注意,日期取决于时区:2016-01-20 02:00:00在巴黎与西雅图的2016-01-19 17:00:00是同一时刻,但日期不一样。核心库中没有类来模拟没有时间的日期。您必须使用new DateTime.now() 请注意,日期取决于时区:2016-01-20 02:00:00在巴黎与西雅图的2016-01-19

我在文档中看到的是
Datetime.now()
,但它也返回Timespan,我只需要日期。

核心库中没有类可以建模没有时间的日期。您必须使用
new DateTime.now()


请注意,日期取决于时区:
2016-01-20 02:00:00
在巴黎与西雅图的
2016-01-19 17:00:00
是同一时刻,但日期不一样。

核心库中没有类来模拟没有时间的日期。您必须使用
new DateTime.now()


请注意,日期取决于时区:
2016-01-20 02:00:00
在巴黎与西雅图的
2016-01-19 17:00:00
是同一时刻,但日期不同。

现在创建一个新日期
,只包含您需要的部分:

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

现在创建一个新的日期,只包含您需要的部分:

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

如果您只想要没有时间戳的日期。你可以借助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';

如果您只想要没有时间戳的日期。你可以借助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';

如果您更喜欢更简洁的单行格式,根据Günter Zöchbauer的回答,您还可以写:

DateTime dateToday=DateTime(DateTime.now().year,DateTime.now().month,DateTime.now().day);

不过,它将对DateTime.now()进行3次调用,不需要额外的变量,特别是在与Dart三元运算符或内部颤振UI代码块一起使用时。

如果您更喜欢更简洁的单行格式,根据Günter Zöchbauer的回答,您还可以编写:

DateTime dateToday=DateTime(DateTime.now().year,DateTime.now().month,DateTime.now().day);

尽管它将对DateTime.now()进行3次调用,但不需要额外的变量,尤其是在与Dart三元运算符一起使用或在Flatter UI代码块中使用时。

您可以将当前日期作为

 final now = new DateTime.now();
 String formatter = DateFormat('yMd').format(now);// 28/03/2020
            
问:您是否想知道如何记住日期格式(
DateFormat('yMd')

A.=>那么答案就是颤振文档

允许用户从一组标准日期时间格式中进行选择,并在某些地区指定自定义模式。直接从文档中获取

ICU Name                   Skeleton
 --------                   --------
 DAY                          d
 ABBR_WEEKDAY                 E
 WEEKDAY                      EEEE
 ABBR_STANDALONE_MONTH        LLL
 STANDALONE_MONTH             LLLL
 NUM_MONTH                    M
 NUM_MONTH_DAY                Md
 NUM_MONTH_WEEKDAY_DAY        MEd
 ABBR_MONTH                   MMM
 ABBR_MONTH_DAY               MMMd
 ABBR_MONTH_WEEKDAY_DAY       MMMEd
 MONTH                        MMMM
 MONTH_DAY                    MMMMd
 MONTH_WEEKDAY_DAY            MMMMEEEEd
 ABBR_QUARTER                 QQQ
 QUARTER                      QQQQ
 YEAR                         y
 YEAR_NUM_MONTH               yM
 YEAR_NUM_MONTH_DAY           yMd
 YEAR_NUM_MONTH_WEEKDAY_DAY   yMEd
 YEAR_ABBR_MONTH              yMMM
 YEAR_ABBR_MONTH_DAY          yMMMd
 YEAR_ABBR_MONTH_WEEKDAY_DAY  yMMMEd
 YEAR_MONTH                   yMMMM
 YEAR_MONTH_DAY               yMMMMd
 YEAR_MONTH_WEEKDAY_DAY       yMMMMEEEEd
 YEAR_ABBR_QUARTER            yQQQ
 YEAR_QUARTER                 yQQQQ
 HOUR24                       H
 HOUR24_MINUTE                Hm
 HOUR24_MINUTE_SECOND         Hms
 HOUR                         j
 HOUR_MINUTE                  jm
 HOUR_MINUTE_SECOND           jms
 HOUR_MINUTE_GENERIC_TZ       jmv
 HOUR_MINUTE_TZ               jmz
 HOUR_GENERIC_TZ              jv
 HOUR_TZ                      jz
 MINUTE                       m
 MINUTE_SECOND                ms
 SECOND                       s

/// Examples Using the US Locale:
///      Pattern                           Result
///      ----------------                  -------
         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 // force 24 hour time

希望您现在可以使用上述格式获取所需的任何类型的日期格式。

您可以将当前日期作为

 final now = new DateTime.now();
 String formatter = DateFormat('yMd').format(now);// 28/03/2020
            
问:您是否想知道如何记住日期格式(
DateFormat('yMd')

A.=>那么答案就是颤振文档

允许用户从一组标准日期时间格式中进行选择,并在某些地区指定自定义模式。直接从文档中获取

ICU Name                   Skeleton
 --------                   --------
 DAY                          d
 ABBR_WEEKDAY                 E
 WEEKDAY                      EEEE
 ABBR_STANDALONE_MONTH        LLL
 STANDALONE_MONTH             LLLL
 NUM_MONTH                    M
 NUM_MONTH_DAY                Md
 NUM_MONTH_WEEKDAY_DAY        MEd
 ABBR_MONTH                   MMM
 ABBR_MONTH_DAY               MMMd
 ABBR_MONTH_WEEKDAY_DAY       MMMEd
 MONTH                        MMMM
 MONTH_DAY                    MMMMd
 MONTH_WEEKDAY_DAY            MMMMEEEEd
 ABBR_QUARTER                 QQQ
 QUARTER                      QQQQ
 YEAR                         y
 YEAR_NUM_MONTH               yM
 YEAR_NUM_MONTH_DAY           yMd
 YEAR_NUM_MONTH_WEEKDAY_DAY   yMEd
 YEAR_ABBR_MONTH              yMMM
 YEAR_ABBR_MONTH_DAY          yMMMd
 YEAR_ABBR_MONTH_WEEKDAY_DAY  yMMMEd
 YEAR_MONTH                   yMMMM
 YEAR_MONTH_DAY               yMMMMd
 YEAR_MONTH_WEEKDAY_DAY       yMMMMEEEEd
 YEAR_ABBR_QUARTER            yQQQ
 YEAR_QUARTER                 yQQQQ
 HOUR24                       H
 HOUR24_MINUTE                Hm
 HOUR24_MINUTE_SECOND         Hms
 HOUR                         j
 HOUR_MINUTE                  jm
 HOUR_MINUTE_SECOND           jms
 HOUR_MINUTE_GENERIC_TZ       jmv
 HOUR_MINUTE_TZ               jmz
 HOUR_GENERIC_TZ              jv
 HOUR_TZ                      jz
 MINUTE                       m
 MINUTE_SECOND                ms
 SECOND                       s

/// Examples Using the US Locale:
///      Pattern                           Result
///      ----------------                  -------
         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 // force 24 hour time

希望现在您可以使用上述格式获取所需的任何类型的日期格式。

在DateTime中使用“day”。现在()

在DateTime中使用“day”。现在()

首先转到pub.dev,获取intl包并将其添加到您的项目中


DateFormat.yMMMMd().format(要呈现的日期。但必须具有DateTime类型)

首先转到pub.dev,获取intl包并将其添加到项目中

DateFormat.yMMMMd().format(要呈现的日期。但必须具有DateTime类型)

使用此格式

使用这个


我想你应该补充说,这需要intl软件包。这是沉重的manI想你应该补充说,这需要intl软件包。这是沉重的人工正是我所寻找的,非常感谢!完美正是我想要的!谢谢,你为我节省了数小时的时间,这正是我想要的,非常感谢!完美正是我想要的!谢谢,你节省了我的时间,我需要这个,以避免使用额外的软件包,如
intl
谢谢!我需要这个来避免使用额外的包,比如
intl
谢谢!