时间间隔是用来表示一个时间段的实例,两个时间的差可以构成一个时间间隔实例,现在就来介绍一下使用方法
几点重要的用法:
a先来介绍几个方法
时间跨度。分钟(其他时间比如天数,小时数,秒数都一样的情况下得到的分钟数的差),其他的小时,秒一样日期时间。勾选:是一个计时周期,表示一百纳秒,即一千万分之一秒,那么一会儿在这里表示总共相差多少个时间周期,即:9 * 24 * 3600 * 10000000 23 * 3600 * 10000000 59 * 60 * 10000000 59 * 10000000=8639990000000。3600 是一小时的秒数时间跨度。总天数:两个时间段相差的日数,其他的总小时数,总分钟数,总秒钟数一样
b两个时间的差
复制代码代码如下:string time 1= 2010-5-26 8:10:00 ;字符串时间2= 2010-5-26 18:20:00 ;日期时间t1=转换今天时间(时间1);日期时间t2=转换今天时间(时间2);
时间跨度ts1=T2-t1;字符串tsMin=ts1 .分钟。ToString();
时间跨度ts11=新的时间跨度(t1 .打勾);时间跨度ts22=新时间跨度(t2 .打勾);
字符串diff=ts22 .减去(ts11)。总分钟数。tostring();减去:表示两个时间段的差差异:就表示两个时间相差的分钟数,上面的例子就是610分钟。
得到一个时间间隔实例,时间跨度有一些属性:天、总计天、小时、总计小时、分钟、总计分钟、秒、总计秒、刻度,注意没有总计刻度。这些属性名称开始理解有些困难,但阅读本文后,相应您一定茅塞顿开。
举例说明
时间一是2010-1-2 8:43:35;时间2是2010-1-12 8:43:34。用时间2减时间1,得到一个时间间隔实例。
那么时间2比时间一多9 天23 小时59分59秒。
那么,天就是9小时就是23分钟就是59秒就是59。
所以以后想知道两个时间段的差就容易的多了
时间间隔格式帮助程序
复制代码代码如下:使用系统;使用系统。集合。泛型;
class TimeSpan utility { public static string format string(TimeSpan atime span){ string new format=atime span .ToString( d d h h m m s );//1d 3h 43m 23s
返回新格式}
公共静态字符串TimeSpanInWords(TimeSpan aTimeSpan){ Liststring timestring=new Liststring();
int[] timeParts=new[] { aTimeSpan .几天,阿提梅斯潘。几个小时,阿提梅斯班。几分钟,阿提梅斯班。秒};string[] timeUnits=new[] { 天,小时,分钟,秒 };
for(int I=0;我时间部分。长度;I){ if(time parts[I]0){时间字符串.添加(字符串格式(“{0} {1}”,时间部分[i],复数(时间部分[i],时间单位[i]).} }
返回时间字符串。数数!=0 ?字符串Join(,,timeStrings .to array()):"0秒";}
私有静态字符串复数(int n,string unit) { if (string .IsNullOrEmpty(单位))返回字符串。空的;
n=数学ABS(n);//-1也应该是单数
返回单位(n==1?字符串。空:" s ");}}
公共类客户端{ static void Main() { //12天23小时24分2秒TimeSpan span=新的TimeSpan(12,23,24,2);
控制台WriteLine(TimeSpanUtility .TimeSpanInWords(span));//输出:12天23小时24分2秒控制台WriteLine(TimeSpanUtility .格式字符串(span));//输出:12d 23h 24m 2s }}