C#关于时间处理
2011-08-13 15:57
197 查看
一. DateTime
在C#中,系统提供了许多关于时间处理的函数,我们可以通过System.DateTime.Now获取系统时间.当然也可以用DateTime类来创建时间对象.下面给了几个例子获取系统时间的方法.
DateTime dt1 = new DateTime(2004, 10, 19); Console.WriteLine("dt1: {0}", dt1); DateTime dt2 = new DateTime(2004, 10, 19, 22, 47, 35); Console.WriteLine("dt2: {0}", dt2); DateTime dt3 = new DateTime(2004, 10, 19, 22, 47, 35, 259); Console.WriteLine("dt3: {0}", dt3); Stringtime1= System.DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss"); Console.WriteLine(time1); | 程序运行的结果截图是 dt1:2011-08-13 0:00:00 dt2:2011-08-13 15:49:21 dt3:2011-08-13 15:49:21 2011-08-13-15-49-50 |
再看下一个有管时间的类:Timespan,就字面的意思应该知道它的中文意思时间间隔.先看一个例子:
TimeSpan oneweek = new TimeSpan(4, 12, 0, 0) + new TimeSpan(2, 12, 0, 0); //(4, 12, 0, 0)中的参数分别表示 days,hours,minutes,seconds. DateTime now = DateTime.Now; DateTime past = now - oneweek; Console.WriteLine(oneweek.ToString()); Console.WriteLine(now.ToString()); Console.WriteLine(past.ToString()); | 输出结果时 15.00:00:00 2011-08-13 16:05:10 2011-08-13 16:05:15 |
DateTime time1 = DateTime.Now; DateTime time2 = DateTime.Now.AddYears(10); DateTime time3 = DateTime.Now.AddMonths(11); DateTime time4 = DateTime.Now.AddDays(7); DateTime time5 = DateTime.Now.AddHours(12); Console.WriteLine(time1.ToString()); Console.WriteLine(time2.ToString()); Console.WriteLine(time3.ToString()); Console.WriteLine(time4.ToString()); Console.WriteLine(time5.ToString()); | 程序运行的结果截图是: 2011-08-13 16:05:10 2021-08-13 16:05:10 2012-07-13 16:05:10 2011-08-21 16:05:10 2011-08-14 02:05:10 |
有关本地时间和标准UTC时间: UTC时间也就是格林威治标准时间.
DateTime local=DateTime.Now;//本地时间 Console.WriteLine("{0},{1},{2}",local.ToString(),local.Kind.ToString(),TimeZone.CurrentTimeZone.StandardName); DateTime utctime=DateTime.UtcNow;//协调通用时间; Console.WriteLine("{0},{1}",utctime.ToString(),utctime.Kind.ToString()); |
2011-08-13 16:05:10,Utc
二.有关时间格式的问题
时间显示的格式可以是24或者12小时制的,还有其他方式的.
DateTime local=DateTime.Now;//本地时间 Console.WriteLine("the time is{0: hh:mm tt}",local); Console.WriteLine("Date is {0:ddd MMM dd, yyyy}", local); Console.WriteLine("{0:ddd MMM dd,yyyy}",local); Console.WriteLine("{0: HH :mm :ss tt}",local); Console.WriteLine("{0 :m}",local); | the time is 16:08 AM Date is 六 八月 13,2011 六 八月 13,2011 8月13日 |
TimeSpan的构造函数有:
TimeSpan oneweek = new TimeSpan(4, 12, 0, 0) + new TimeSpan(2, 12, 0, 0);
那么oneweek就等于7天:4.5天加2.5天
TimeSpan tp = new TimeSpan(1,50,20,10);//dd hh mm ss
TimeSpan tp2 = new TimeSpan(1, 50, 20);// hh mm ss
TimeSpan tp3 = new TimeSpan(1,1,1,1,1);//dd hh mm ss msms
//(4, 12, 0, 0)中的参数分别表示days,hours,minutes,seconds.
同时我们可以用TimeSpan的静态方法来给TimeSpan的实例对象赋值
请看下面的例子:
TimeSpan spa1 = TimeSpan.FromDays(10); TimeSpan spa2 = TimeSpan.FromHours(10); TimeSpan spa3 = TimeSpan.FromMinutes(44); TimeSpan spa4 = TimeSpan.FromSeconds(5); TimeSpan spa5 = TimeSpan.FromMilliseconds(55); TimeSpan spa6 = TimeSpan.FromTicks(200);//时间的刻度 Console.WriteLine(spa1); Console.WriteLine(spa2); Console.WriteLine(spa3); Console.WriteLine(spa4); Console.WriteLine(spa5); Console.WriteLine(spa6); | 输出结果是: 10.00:00:00 10:00:00 00:44:00 00:00:05 00:00:00.0550000 00:00:00.0000200 |
相关文章推荐
- java关于时间处理的函数
- 关于ASP.Net中的时间处理
- .NET 中关于日期时间的格式化处理
- 开发中遇到的关于时间的处理:设置时间范围大于当前时间小于某一天
- sql server 借用函数处理一些关于时间的实用例子
- 关于RTP时间戳以及播放器对时间戳的处理
- 今天做应用 用到了不少关于时间处理方面的东西,总结一下,希望大家指正!
- 关于ASP.Net中的时间处理!!
- Shell中关于时间的处理
- 关于ASP.Net中的时间处理
- 关于ASP.Net中的时间处理
- 关于程序中时间的一些操作处理
- 关于php 时间的处理
- pandas中关于时间的处理总结
- 关于时间问题的经典处理方法
- java中关于时间的处理
- 关于ASP.Net中的时间处理
- java中关于时间的处理(已测试)
- 几条常用 关于时间的 处理
- c#.NET 中关于日期时间的格式化处理 (转)