首页 > 解决方案 > 如何在 Flutter 中计算并获取两年之间的月份列表?

问题描述

试图获取给定年份范围内所有月份的列表。

  var startYear = DateTime(1999);
  var endYear = DateTime(2021);

结果应该是这样的

List monthsInRange = [
Jan 1999,
Feb 1999,
Mar 1999,
.
.
.
.
.
.
.
.
.
.
.
Dec 2021
]

任何帮助都会很棒。

标签: flutterdatetime

解决方案


首先将 intl dep 添加到您的 pubspec.yaml

dependencies:
  flutter:
    sdk: flutter
  intl: ^0.16.1

导入包:

import 'package:intl/intl.dart';

然后创建一个函数:

List<String> listmonthyear(startYear, endYear) {
  List<String> listdate = []; //if you want String
  while (startYear != endYear) {
    listdate.add(DateFormat.yMMM().format(startYear).toString());
    startYear =
        new DateTime(startYear.year, startYear.month + 1, startYear.day);
  }
  return listdate;
}

推荐阅读