作者:mobiledu2502918113 | 来源:互联网 | 2023-08-23 16:18
概述:表示一个时间点通过构造函数或解析格式化的字符串创建DateTime对象,并且符合ISO8601标准的子集,小时是24小时制,范围在0-23之间DateTime对象创建之后,将
概述:
- 表示一个时间点
- 通过构造函数或解析格式化的字符串创建
DateTime
对象,并且符合ISO 8601
标准的子集,小时是24小时制,范围在0-23之间
-
DateTime
对象创建之后,将是固定不变的, 不可被修改
-
DateTime
对象默认使用的是本地时区,除非显示地指定UTC
时区
一,方法详解
- 命名构造,获取当前时间
-
指定时间
//创建时间对象,并指定时间
DateTime victoryDay = new DateTime(1945,9,9);//
-
时间跨度
//计算时间跨度,例如计算2天56时14分的跨度
Duration timeRemaining = new Duration(days:2, hours:56, minutes:14);
print(timeRemaining);//104:14:00.000000
}
- DateTime转时间戳
- 时间戳转DateTime
fromMillisecondsSinceEpoch
- 字符串转DateTime
- 时间比较---在之前
- 时间比较---在之后
- 时间比较---相等
- 大于返回1;等于返回0;小于返回-1
- 时间增加
- 时间减少
- 时间差 两个时间相差 小时数
- 本地时区简码
- 返回UTC与本地时差 小时数
- 返回 年、月、日、时、分、秒、毫秒、微妙
year、month、day、hour、minute、second、millisecond、microsecond
- 返回星期几
二,字符串与日期相互转换
- String-->DateTime:
- 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}');// 返回星期几
四,示例结果
轉發:https://www.cnblogs.com/lxlx1798/p/11267411.html