Stopwatch
1 | private void Countdown() |
Timer
1 | //计时 |
UI线程的计时
1 | TimeSpan _timeSpan = TimeSpan.FromMinutes(3); |
日期处理
1 | string time = $"{_timeSpan.Minutes:D2}{_timeSpan.Seconds:D2}"; |
TimeSpan
在 C# 中,可以使用多种方式来初始化 TimeSpan
类的实例。
初始化
以下是常用的几种参数初始化方式:
使用时间单位的数值初始化:1
2
3
4
5
6
7
8
9
10
11
12
13
14// 初始化为 10 秒
// TimeSpan(int hours, int minutes, int seconds)
TimeSpan timeSpan1 = new TimeSpan(0, 0, 10);
// 初始化为 1 小时 30 分钟
TimeSpan timeSpan2 = new TimeSpan(1, 30, 0);
// 初始化为 2 天 3 小时 15 分钟 30 秒
// TimeSpan(int days, int hours, int minutes, int seconds)
TimeSpan timeSpan3 = new TimeSpan(2, 3, 15, 30);
// 初始化为 1 天 3 小时 15 分 30 秒 500 毫秒
// TimeSpan(int days, int hours, int minutes, int seconds, int milliseconds)
TimeSpan timeSpan4 = new TimeSpan(1, 3, 15, 30, 500);
其中还有一个参数的方法,不建议使用。
使用总的时间间隔数值初始化:
1 | // 初始化为 10 秒 |
使用 TimeSpan.Parse
方法:1
2
3
4
5
6
7// 使用字符串 "10:30" 初始化为 10 小时 30 分钟
TimeSpan timeSpan1 = TimeSpan.Parse("10:30");
TimeSpan timeSpan1 = TimeSpan.Parse("1:10:30");
// 使用字符串 "1.05:30:45.500" 初始化为 1 天 5 小时 30 分钟 45 秒 500 毫秒
TimeSpan timeSpan2 = TimeSpan.Parse("1.05:30:45.500");
这些是一些常用的初始化 TimeSpan
的方式,根据具体的需求选择适合的方式来初始化。
同时需要注意,TimeSpan
是一个不可变的结构体,一旦初始化后,其值是不能修改的,可以通过运算符和方法来对 TimeSpan
进行加减运算、比较等操作。
格式化
1 | TimeSpan timeSpan2 = TimeSpan.Parse("1.23:30:45.500"); |
获取总时长
1 | TimeSpan timeSpan2 = TimeSpan.Parse("1.05:30:45.500"); |
结果
1.22969328703704
29.5126388888889
1770.75833333333
106245.5
106245500
时间戳
1 | /// <summary> |