這是一臺神奇的時光機。以今天爲出發點,選擇你要回到那天、周、月、年,就能夠‘嗖’的一下消失並在另外一個時空出現 b( ̄▽ ̄)dgit
很簡單。只須要填一下,按一下,就能夠‘嗖’~github
若是你想回到那一天web
TimeMachineUtil.getTimestampLatest(true, 3));//返回的是時間戳 將來第三天
TimeMachineUtil.getTimestampLatest(true, -3));//返回的是時間戳 過去的第三天
DateUtil.formatDate(
DateTime.fromMillisecondsSinceEpoch(
TimeMachineUtil.getTimestampLatest(true, 3)),
format: 'yyyy-MM-dd'); //將來第三天 轉成時間格式
複製代碼
若是你想回到那一週app
TimeMachineUtil.getWeeksDate(0); //本週
TimeMachineUtil.getWeeksDate(1); //下一週
TimeMachineUtil.getWeeksDate(-8); //以前的第8周
TimeMachineUtil.getWeeksDate(10); //將來的第10周
//打印的信息
I/flutter (21876): 某個周的週一和週日:{monDay: 2019-09-22, sunDay: 2019-09-16, monDayStamp: 1568563200000, sunDayStamp: 1569167999000}
I/flutter (21876): 某個周的週一和週日:{monDay: 2019-09-29, sunDay: 2019-09-23, monDayStamp: 1569168000000, sunDayStamp: 1569772799000}
I/flutter (21876): 某個周的週一和週日:{monDay: 2019-07-28, sunDay: 2019-07-22, monDayStamp: 1563724800000, sunDayStamp: 1564329599000}
I/flutter (21876): 某個周的週一和週日:{monDay: 2019-12-01, sunDay: 2019-11-25, monDayStamp: 1574611200000, sunDayStamp: 1575215999000}
複製代碼
若是你想回到那一月ui
TimeMachineUtil.getMonthDate(1); //下個月
TimeMachineUtil.getMonthDate(0); //這個月
TimeMachineUtil.getMonthDate(4); //將來第四個月
TimeMachineUtil.getMonthDate(-6); //過去的第六個月
//打印的信息
I/flutter (21876): 過去將來某個月初月末:{startDate: 2019-10-01, endDate: 2019-10-31, startDateStamp: 1569859200000, endDateStamp: 1572537599000}
I/flutter (21876): 過去將來某個月初月末:{startDate: 2019-09-01, endDate: 2019-09-30, startDateStamp: 1567267200000, endDateStamp: 1569859199000}
I/flutter (21876): 過去將來某個月初月末:{startDate: 2020-01-01, endDate: 2020-01-31, startDateStamp: 1577808000000, endDateStamp: 1580486399000}
I/flutter (21876): 過去將來某個月初月末:{startDate: 2019-03-01, endDate: 2019-03-31, startDateStamp: 1551369600000, endDateStamp: 1554047999000}
複製代碼
若是你想回到那一年spa
TimeMachineUtil.getStartEndYearDate(6); //將來第6年
TimeMachineUtil.getStartEndYearDate(-6); //過去第6年
TimeMachineUtil.getStartEndYearDate(0); //今年
//打印信息
I/flutter (21876): 某一年初和年底:{startTime: 2025-01-01, endTime: 2025-12-31, startStamp: 1735660800000, endStamp: 1767196799000}
I/flutter (21876): 某一年初和年底:{startTime: 2013-01-01, endTime: 2013-12-31, startStamp: 1356969600000, endStamp: 1388505599000}
I/flutter (21876): 某一年初和年底:{startTime: 2019-01-01, endTime: 2019-12-31, startStamp: 1546272000000, endStamp: 1577807999000}
複製代碼
注意:
一、時間戳(1546272000000)可能須要 / 1000 看後臺需求。
二、全部的格式時間(2019-12-31)都沒有帶時分秒,但時間戳轉時間格式是有的,若是你須要能夠在yyyy-MM-dd的地方改成 yyyy-MM-dd HH:mm:sscode
demo地址:https://github.com/NathansLiu/flutter_time_machineorm