在这文章之前给大家推荐一个时间戳转换网站:
https://tool.chinaz.com/Tools/unixtime.aspx
一,方法详解
-
命名构造,获取当前时间
now()
-
DateTime转时间戳
millisecondsSinceEpoch
-
时间戳转DateTime
fromMillisecondsSinceEpoch
-
字符串转DateTime
parse(string)
-
时间比较---在之前
isBefore(date)
-
时间比较---在之后
isAfter(date)
-
时间比较---相等
isAtSameMomentAs(date)
-
大于返回1;等于返回0;小于返回-1
compareTo(date)
-
时间增加
add(Duration)
-
时间减少
subtract(Duration)
-
时间差 两个时间相差 小时数
difference(date)
-
本地时区简码
timeZoneName
-
返回UTC与本地时差 小时数
timeZoneOffset
-
返回 年、月、日、时、分、秒、毫秒、微妙
year、month、day、hour、minute、second、millisecond、microsecond
-
返回星期几
weekday
二,字符串与日期相互转换
-
String-->DateTime:
DateTime.parse(String);
-
DateTime -->formatString:
formatDate(DateTime ,[yyyy,'-',mm,'-',dd]);
三,代码示例
var today = DateTime.now(); print('当前时间是:$today'); var date1 = today.millisecondsSinceEpoch; print('当前时间戳:$date1'); var date2 = DateTime.fromMillisecondsSinceEpoch(date1); print('时间戳转日期:$date2'); //拼接成date var dentistAppointment = new DateTime(2019, 6, 20, 17, 30,20); print(dentistAppointment); // 字符串转date DateTime date3 = DateTime.parse("2019-06-20 15:32:41"); print(date3); // 时间比较 print(today.isBefore(date3));// 在之前 print(today.isAfter(date3)); // 在之后 print(date3.isAtSameMomentAs(date3));// 相同 print(date3.compareTo(today));// 大于返回1;等于返回0;小于返回-1。 // print(DateTime.now().toString()); // print(DateTime.now().toIso8601String()); //时间增加 var fiftyDaysFromNow = today.add(new Duration(days: 5)); print('today加5天:$fiftyDaysFromNow'); //时间减少 DateTime fiftyDaysAgo = today.subtract(new Duration(days: 5)); print('today减5天:$fiftyDaysAgo'); //时间差 两个时间相差 小时数 print('比较两个时间 差 小时数:${fiftyDaysFromNow.difference(fiftyDaysAgo)}'); print('本地时区简码:${today.timeZoneName}'); print('返回UTC与本地时差 小时数:${today.timeZoneOffset}'); print('获取年月日:${today.year}');//month、day、hour、minute、second、millisecond、microsecond print('星期:${today.weekday}');// 返回星期几

发表评论