我有一个颤抖的日期字符串,我想添加星期,月份和年份,但不确定如何执行。
在android java中,我们可以通过以下方式添加周,月,年
Calendar cal = Calendar.getInstance();
cal.setTime('2019-09-04');
cal.add(Calendar.WEEK_OF_MONTH,1); // add one week
cal.add(Calendar.WEEK_OF_MONTH, 2 ); // add two weeks
cal.add(Calendar.MONTH, 1); // add # of month
cal.add(Calendar.MONTH, 3); // add 3 months
cal.add(Calendar.YEAR, 1); // add 1 year
但是,我不知道如何在颤振中添加它。我知道我可以使用工期,但只接受天数cal.add(new Duration(days:30)); 如果我使用持续时间,那么我需要弄清楚一个月,一周或一年中有多少天,这是更多的数学运算。在android java中使用上面的代码,android将采用周,月或年。有什么办法让flutter在日期中增加几周,几个月或一年?
例如:如果我有01/31/2019并且我想添加一个月,则新日期应为02/28/2019。如果我想在2019年2月28日添加一个月,则输出应为03/31/2019
数周和数年都一样。如果指定,颤振应在日期上加上一个星期,或者增加一年等等。预先感谢
答案 0 :(得分:0)
您可以在此中篇文章中找到所需的一切: Top 7 Date methods
让我们假设您拥有“ 2019-09-04”,在Dart中您拥有:
var myDate = DateTime.parse("2019-09-04 20:18:04Z");
myDate.add(Duration(days: 10, hours: 5)));
然后将其打印出来:
print(myDate.toLocal());
编辑:
由于您在下面的评论中,要添加年或月,请执行以下操作:
var date = new DateTime(2019, 9, 4);
var newDate = new DateTime(date.year + 1, date.month + 2, date.day);
您可以在此处找到类似的答案:Add/Substract months/years to date in dart?