C# DateTime

C# DateTime

获得当前系统时间: DateTime dt = DateTime.Now;

Environment.TickCount可以得到“系统启动到现在”的毫秒值

DateTime now = DateTime.Now;
Console.WriteLine(now.ToString("yyyy-MM-dd"));  //按yyyy-MM-dd格式输出s

Console.WriteLine(dt.ToString());    //  26/11/2009 AM 11:21:30

Console.WriteLine(dt.ToFileTime().ToString());   //   129036792908014024

// Converts the value of the current System.DateTime object to a Windows file time

Console.WriteLine(dt.ToFileTimeUtc().ToString());  //     129036792908014024

// Converts the value of the current System.DateTime object to a Windows file time

Console.WriteLine(dt.ToLocalTime().ToString());   //       26/11/2009 AM 11:21:30

// Converts the value of the current System.DateTime object to local time.

Console.WriteLine(dt.ToLongDateString().ToString());   //      2009年11月26日

Console.WriteLine(dt.ToLongTimeString().ToString());  //      AM 11:21:30

Console.WriteLine(dt.ToOADate().ToString());   //      40143.4732731597

Console.WriteLine(dt.ToShortDateString().ToString());   //     26/11/2009

Console.WriteLine(dt.ToShortTimeString().ToString());   //     AM 11:21

Console.WriteLine(dt.ToUniversalTime().ToString());   //       26/11/2009 AM 3:21:30

Console.WriteLine(dt.Year.ToString());   //        2009

Console.WriteLine(dt.Date.ToString());   //        26/11/2009 AM 12:00:00

Console.WriteLine(dt.DayOfWeek.ToString());  //       Thursday

Console.WriteLine(dt.DayOfYear.ToString());   //       330

Console.WriteLine(dt.Hour.ToString());       //        11

Console.WriteLine(dt.Millisecond.ToString());   //     801        (毫秒)

Console.WriteLine(dt.Minute.ToString());   //      21

Console.WriteLine(dt.Month.ToString());   //       11

Console.WriteLine(dt.Second.ToString());   //      30

Console.WriteLine(dt.Ticks.ToString());   //       633948312908014024


Console.WriteLine(dt.TimeOfDay.ToString());   //       12:29:51.5181524

// Gets the time of day for this instance.

// 返回 A System.TimeSpan that represents the fraction of the day that has elapsed since midnight.

Console.WriteLine(dt.ToString());     //     26/11/2009 PM 12:29:51

Console.WriteLine(dt.AddYears(1).ToString());    //         26/11/2010 PM 12:29:51

Console.WriteLine(dt.AddDays(1.1).ToString());    //        27/11/2009 PM 2:53:51

Console.WriteLine(dt.AddHours(1.1).ToString());    //       26/11/2009 PM 1:35:51

Console.WriteLine(dt.AddMilliseconds(1.1).ToString());    //26/11/2009 PM 12:29:51

Console.WriteLine(dt.AddMonths(1).ToString());    //        26/12/2009 PM 12:29:51

Console.WriteLine(dt.AddSeconds(1.1).ToString());    //     26/11/2009 PM 12:29:52

Console.WriteLine(dt.AddMinutes(1.1).ToString());    //     26/11/2009 PM 12:30:57

Console.WriteLine(dt.AddTicks(1000).ToString());    //      26/11/2009 PM 12:29:51

Console.WriteLine(dt.CompareTo(dt).ToString());    //       0

Console.WriteLine(dt.Add(new TimeSpan(1,0,0,0)).ToString());    // 加上一个时间段

(注:

System.TimeSpan为一个时间段,构造函数如下

public TimeSpan(long ticks); // ticks: A time period expressed in 100-nanosecond units.

                           //nanosecond:十亿分之一秒   new TimeSpan(10,000,000)        为一秒

public TimeSpan(int hours, int minutes, int seconds);

public TimeSpan(int days, int hours, int minutes, int seconds);

public TimeSpan(int days, int hours, int minutes, int seconds, int milliseconds);

Console.WriteLine(dt.Equals("2005-11-6 16:11:04").ToString());     //        False

Console.WriteLine(dt.Equals(dt).ToString());    //      True

Console.WriteLine(dt.GetHashCode().ToString());    //       1103291775

Console.WriteLine(dt.GetType().ToString());    //       System.DateTime

Console.WriteLine(dt.GetTypeCode().ToString());    //       DateTime
  

long Start = Environment.TickCount;   //单位是毫秒

long End = Environment.TickCount;

Console.WriteLine("Start is : "+Start);

Console.WriteLine("End is : "+End);

Console.WriteLine("The Time is {0}",End-Start);
Console.WriteLine(dt.GetDateTimeFormats('s')[0].ToString());    //2009-11-26T13:29:06

Console.WriteLine(dt.GetDateTimeFormats('t')[0].ToString());    //PM 1:29

Console.WriteLine(dt.GetDateTimeFormats('y')[0].ToString());    //2009年11月

Console.WriteLine(dt.GetDateTimeFormats('D')[0].ToString());    //2009年11月26日

Console.WriteLine(dt.GetDateTimeFormats('D')[1].ToString());    //星期四, 26 十一月, 2009

Console.WriteLine(dt.GetDateTimeFormats('D')[2].ToString());    //26 十一月, 2009

Console.WriteLine(dt.GetDateTimeFormats('D')[3].ToString());    //星期四 2009 11 26

Console.WriteLine(dt.GetDateTimeFormats('M')[0].ToString());    //26 十一月

Console.WriteLine(dt.GetDateTimeFormats('f')[0].ToString());    //2009年11月26日 PM 1:29

Console.WriteLine(dt.GetDateTimeFormats('g')[0].ToString());    //26/11/2009 PM 1:29

Console.WriteLine(dt.GetDateTimeFormats('r')[0].ToString());    //Thu, 26 Nov 2009 13:29:06 GMT

(注:

常用的日期时间格式:

格式 说明      输出格式 
d 精简日期格式 MM/dd/yyyy 
D 详细日期格式 dddd, MMMM dd, yyyy 
f  完整格式    (long date + short time) dddd, MMMM dd, yyyy HH:mm 
F 完整日期时间格式 (long date + long time) dddd, MMMM dd, yyyy HH:mm:ss 
g 一般格式 (short date + short time) MM/dd/yyyy HH:mm 
G 一般格式 (short date + long time) MM/dd/yyyy HH:mm:ss 
m,M 月日格式 MMMM dd 
s 适中日期时间格式 yyyy-MM-dd HH:mm:ss 
t 精简时间格式 HH:mm 
T 详细时间格式 HH:mm:ss

)


Console.WriteLine(string.Format("{0:d}", dt));    //28/12/2009

Console.WriteLine(string.Format("{0:D}", dt));    //2009年12月28日

Console.WriteLine(string.Format("{0:f}", dt));    //2009年12月28日 AM 10:29

Console.WriteLine(string.Format("{0:F}", dt));    //2009年12月28日 AM 10:29:18

Console.WriteLine(string.Format("{0:g}", dt));    //28/12/2009 AM 10:29

Console.WriteLine(string.Format("{0:G}", dt));    //28/12/2009 AM 10:29:18

Console.WriteLine(string.Format("{0:M}", dt));    //28 十二月

Console.WriteLine(string.Format("{0:R}", dt));    //Mon, 28 Dec 2009 10:29:18 GMT

Console.WriteLine(string.Format("{0:s}", dt));    //2009-12-28T10:29:18

Console.WriteLine(string.Format("{0:t}", dt));    //AM 10:29

Console.WriteLine(string.Format("{0:T}", dt));    //AM 10:29:18

Console.WriteLine(string.Format("{0:u}", dt));    //2009-12-28 10:29:18Z

Console.WriteLine(string.Format("{0:U}", dt));    //2009年12月28日 AM 2:29:18

Console.WriteLine(string.Format("{0:Y}", dt));    //2009年12月

Console.WriteLine(string.Format("{0}", dt));    //28/12/2009 AM 10:29:18

Console.WriteLine(string.Format("{0:yyyyMMddHHmmssffff}", dt));    //200912281029182047

计算2个日期之间的天数差
DateTime dt1 = Convert.ToDateTime("2007-8-1");    
DateTime dt2 = Convert.ToDateTime("2007-8-15");   
TimeSpan span = dt2.Subtract(dt1);              
int dayDiff = span.Days ;                    

计算某年某月的天数
int days = DateTime.DaysInMonth(2009, 8);       
days = 31;                                      

给日期增加一天、减少一天
DateTime dt =DateTime.Now;
dt.AddDays(1); //增加一天 dt本身并不改变
dt.AddDays(-1);//减少一天 dt本身并不改变

作者: Peter
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.

DateTime dt = DateTime.Now;

//    Label1.Text = dt.ToString();//2005-11-5 13:21:25

//    Label2.Text = dt.ToFileTime().ToString();//127756416859912816

//    Label3.Text = dt.ToFileTimeUtc().ToString();//127756704859912816

//    Label4.Text = dt.ToLocalTime().ToString();//2005-11-5 21:21:25

//    Label5.Text = dt.ToLongDateString().ToString();//2005年11月5日

//    Label6.Text = dt.ToLongTimeString().ToString();//13:21:25

//    Label7.Text = dt.ToOADate().ToString();//38661.5565508218

//    Label8.Text = dt.ToShortDateString().ToString();//2005-11-5

//    Label9.Text = dt.ToShortTimeString().ToString();//13:21

//    Label10.Text = dt.ToUniversalTime().ToString();//2005-11-5 5:21:25

//     2005-11-5 13:30:28.4412864

//    Label1.Text = dt.Year.ToString();//2005

//    Label2.Text = dt.Date.ToString();//2005-11-5 0:00:00

//    Label3.Text = dt.DayOfWeek.ToString();//Saturday

//    Label4.Text = dt.DayOfYear.ToString();//309

//    Label5.Text = dt.Hour.ToString();//13

//    Label6.Text = dt.Millisecond.ToString();//441

//    Label7.Text = dt.Minute.ToString();//30

//    Label8.Text = dt.Month.ToString();//11

//    Label9.Text = dt.Second.ToString();//28

//    Label10.Text = dt.Ticks.ToString();//632667942284412864

//    Label11.Text = dt.TimeOfDay.ToString();//13:30:28.4412864

//    Label1.Text = dt.ToString();//2005-11-5 13:47:04

//    Label2.Text = dt.AddYears(1).ToString();//2006-11-5 13:47:04

//    Label3.Text = dt.AddDays(1.1).ToString();//2005-11-6 16:11:04

//    Label4.Text = dt.AddHours(1.1).ToString();//2005-11-5 14:53:04

//    Label5.Text = dt.AddMilliseconds(1.1).ToString();//2005-11-5 13:47:04

//    Label6.Text = dt.AddMonths(1).ToString();//2005-12-5 13:47:04

//    Label7.Text = dt.AddSeconds(1.1).ToString();//2005-11-5 13:47:05

//    Label8.Text = dt.AddMinutes(1.1).ToString();//2005-11-5 13:48:10

//    Label9.Text = dt.AddTicks(1000).ToString();//2005-11-5 13:47:04

//    Label10.Text = dt.CompareTo(dt).ToString();//0

    Label11.Text = dt.Add(?).ToString();//问号为一个时间段

//    Label1.Text = dt.Equals("2005-11-6 16:11:04").ToString();//False

//    Label2.Text = dt.Equals(dt).ToString();//True

//    Label3.Text = dt.GetHashCode().ToString();//1474088234

//    Label4.Text = dt.GetType().ToString();//System.DateTime

//    Label5.Text = dt.GetTypeCode().ToString();//DateTime

   

//    Label1.Text = dt.GetDateTimeFormats('s')[0].ToString();//2005-11-05T14:06:25

//    Label2.Text = dt.GetDateTimeFormats('t')[0].ToString();//14:06

//    Label3.Text = dt.GetDateTimeFormats('y')[0].ToString();//2005年11月

//    Label4.Text = dt.GetDateTimeFormats('D')[0].ToString();//2005年11月5日

//    Label5.Text = dt.GetDateTimeFormats('D')[1].ToString();//2005 11 05

//    Label6.Text = dt.GetDateTimeFormats('D')[2].ToString();//星期六 2005 11 05

//    Label7.Text = dt.GetDateTimeFormats('D')[3].ToString();//星期六 2005年11月5日

//    Label8.Text = dt.GetDateTimeFormats('M')[0].ToString();//11月5日

//    Label9.Text = dt.GetDateTimeFormats('f')[0].ToString();//2005年11月5日 14:06

//    Label10.Text = dt.GetDateTimeFormats('g')[0].ToString();//2005-11-5 14:06

//    Label11.Text = dt.GetDateTimeFormats('r')[0].ToString();//Sat, 05 Nov 2005 14:06:25 GMT

    Label1.Text =   string.Format("{0:d}",dt);//2005-11-5

    Label2.Text =   string.Format("{0:D}",dt);//2005年11月5日

    Label3.Text =   string.Format("{0:f}",dt);//2005年11月5日 14:23

    Label4.Text =   string.Format("{0:F}",dt);//2005年11月5日 14:23:23

    Label5.Text =   string.Format("{0:g}",dt);//2005-11-5 14:23

    Label6.Text =   string.Format("{0:G}",dt);//2005-11-5 14:23:23

    Label7.Text =   string.Format("{0:M}",dt);//11月5日

    Label8.Text =   string.Format("{0:R}",dt);//Sat, 05 Nov 2005 14:23:23 GMT

    Label9.Text =   string.Format("{0:s}",dt);//2005-11-05T14:23:23

    Label10.Text = string.Format("{0:t}",dt);//14:23

    Label11.Text = string.Format("{0:T}",dt);//14:23:23

    Label12.Text = string.Format("{0:u}",dt);//2005-11-05 14:23:23Z

    Label13.Text = string.Format("{0:U}",dt);//2005年11月5日 6:23:23

    Label14.Text = string.Format("{0:Y}",dt);//2005年11月

    Label15.Text = string.Format("{0}",dt);//2005-11-5 14:23:23

    Label16.Text = string.Format("{0:yyyyMMddHHmmssffff}",dt);

 

1、DateTime 数字型

System.DateTime currentTime=new System.DateTime();

1.1 取当前年月日时分秒

currentTime=System.DateTime.Now;

1.2 取当前年

int 年=currentTime.Year;

1.3 取当前月

int 月=currentTime.Month;

1.4 取当前日

int 日=currentTime.Day;

1.5 取当前时

int 时=currentTime.Hour;

1.6 取当前分

int 分=currentTime.Minute;

1.7 取当前秒

int 秒=currentTime.Second;

1.8 取当前毫秒

int 毫秒=currentTime.Millisecond;

(变量可用中文)

1.9 取中文日期显示——年月日时分

string strY=currentTime.ToString("f"); //不显示秒

1.10 取中文日期显示_年月

string strYM=currentTime.ToString("y");

1.11 取中文日期显示_月日

string strMD=currentTime.ToString("m");

1.12 取中文年月日

string strYMD=currentTime.ToString("D");

1.13 取当前时分,格式为:14:24

string strT=currentTime.ToString("t");

1.14 取当前时间,格式为:2003-09-23T14:46:48

string strT=currentTime.ToString("s");

1.15 取当前时间,格式为:2003-09-23 14:48:30Z

string strT=currentTime.ToString("u"); DateTime dt = DateTime.Now; 
//    Label1.Text = dt.ToString();//2005-11-5 13:21:25 
//    Label2.Text = dt.ToFileTime().ToString();//127756416859912816 
//    Label3.Text = dt.ToFileTimeUtc().ToString();//127756704859912816 
//    Label4.Text = dt.ToLocalTime().ToString();//2005-11-5 21:21:25 
//    Label5.Text = dt.ToLongDateString().ToString();//2005年11月5日 
//    Label6.Text = dt.ToLongTimeString().ToString();//13:21:25 
//    Label7.Text = dt.ToOADate().ToString();//38661.5565508218 
//    Label8.Text = dt.ToShortDateString().ToString();//2005-11-5 
//    Label9.Text = dt.ToShortTimeString().ToString();//13:21 
//    Label10.Text = dt.ToUniversalTime().ToString();//2005-11-5 5:21:25 
//     2005-11-5 13:30:28.4412864 
//    Label1.Text = dt.Year.ToString();//2005 
//    Label2.Text = dt.Date.ToString();//2005-11-5 0:00:00 
//    Label3.Text = dt.DayOfWeek.ToString();//Saturday 
//    Label4.Text = dt.DayOfYear.ToString();//309 
//    Label5.Text = dt.Hour.ToString();//13 
//    Label6.Text = dt.Millisecond.ToString();//441 
//    Label7.Text = dt.Minute.ToString();//30 
//    Label8.Text = dt.Month.ToString();//11 
//    Label9.Text = dt.Second.ToString();//28 
//    Label10.Text = dt.Ticks.ToString();//632667942284412864 
//    Label11.Text = dt.TimeOfDay.ToString();//13:30:28.4412864 
//    Label1.Text = dt.ToString();//2005-11-5 13:47:04 
//    Label2.Text = dt.AddYears(1).ToString();//2006-11-5 13:47:04 
//    Label3.Text = dt.AddDays(1.1).ToString();//2005-11-6 16:11:04 
//    Label4.Text = dt.AddHours(1.1).ToString();//2005-11-5 14:53:04 
//    Label5.Text = dt.AddMilliseconds(1.1).ToString();//2005-11-5 13:47:04 
//    Label6.Text = dt.AddMonths(1).ToString();//2005-12-5 13:47:04 
//    Label7.Text = dt.AddSeconds(1.1).ToString();//2005-11-5 13:47:05 
//    Label8.Text = dt.AddMinutes(1.1).ToString();//2005-11-5 13:48:10 
//    Label9.Text = dt.AddTicks(1000).ToString();//2005-11-5 13:47:04 
//    Label10.Text = dt.CompareTo(dt).ToString();//0 
    Label11.Text = dt.Add(?).ToString();//问号为一个时间段 
//    Label1.Text = dt.Equals("2005-11-6 16:11:04").ToString();//False 
//    Label2.Text = dt.Equals(dt).ToString();//True 
//    Label3.Text = dt.GetHashCode().ToString();//1474088234 
//    Label4.Text = dt.GetType().ToString();//System.DateTime 
//    Label5.Text = dt.GetTypeCode().ToString();//DateTime 
    
//    Label1.Text = dt.GetDateTimeFormats('s')[0].ToString();//2005-11-05T14:06:25 
//    Label2.Text = dt.GetDateTimeFormats('t')[0].ToString();//14:06 
//    Label3.Text = dt.GetDateTimeFormats('y')[0].ToString();//2005年11月 
//    Label4.Text = dt.GetDateTimeFormats('D')[0].ToString();//2005年11月5日 
//    Label5.Text = dt.GetDateTimeFormats('D')[1].ToString();//2005 11 05 
//    Label6.Text = dt.GetDateTimeFormats('D')[2].ToString();//星期六 2005 11 05 
//    Label7.Text = dt.GetDateTimeFormats('D')[3].ToString();//星期六 2005年11月5日 
//    Label8.Text = dt.GetDateTimeFormats('M')[0].ToString();//11月5日 
//    Label9.Text = dt.GetDateTimeFormats('f')[0].ToString();//2005年11月5日 14:06 
//    Label10.Text = dt.GetDateTimeFormats('g')[0].ToString();//2005-11-5 14:06 
//    Label11.Text = dt.GetDateTimeFormats('r')[0].ToString();//Sat, 05 Nov 2005 14:06:25 GMT 

    Label1.Text =   string.Format("{0:d}",dt);//2005-11-5 
    Label2.Text =   string.Format("{0:D}",dt);//2005年11月5日 
    Label3.Text =   string.Format("{0:f}",dt);//2005年11月5日 14:23 
    Label4.Text =   string.Format("{0:F}",dt);//2005年11月5日 14:23:23 
    Label5.Text =   string.Format("{0:g}",dt);//2005-11-5 14:23 
    Label6.Text =   string.Format("{0:G}",dt);//2005-11-5 14:23:23 
    Label7.Text =   string.Format("{0:M}",dt);//11月5日 
    Label8.Text =   string.Format("{0:R}",dt);//Sat, 05 Nov 2005 14:23:23 GMT 
    Label9.Text =   string.Format("{0:s}",dt);//2005-11-05T14:23:23 
    Label10.Text = string.Format("{0:t}",dt);//14:23 
    Label11.Text = string.Format("{0:T}",dt);//14:23:23 
    Label12.Text = string.Format("{0:u}",dt);//2005-11-05 14:23:23Z 
    Label13.Text = string.Format("{0:U}",dt);//2005年11月5日 6:23:23 
    Label14.Text = string.Format("{0:Y}",dt);//2005年11月 
    Label15.Text = string.Format("{0}",dt);//2005-11-5 14:23:23 
    Label16.Text = string.Format("{0:yyyyMMddHHmmssffff}",dt);

1、DateTime 数字型 
System.DateTime currentTime=new System.DateTime();

1.1 取当前年月日时分秒 
currentTime=System.DateTime.Now; 
1.2 取当前年 
int 年=currentTime.Year; 
1.3 取当前月 
int 月=currentTime.Month; 
1.4 取当前日 
int 日=currentTime.Day; 
1.5 取当前时 
int 时=currentTime.Hour; 
1.6 取当前分 
int 分=currentTime.Minute; 
1.7 取当前秒 
int 秒=currentTime.Second; 
1.8 取当前毫秒 
int 毫秒=currentTime.Millisecond; 
(变量可用中文) 

1.9 取中文日期显示——年月日时分 
string strY=currentTime.ToString("f"); //不显示秒 

1.10 取中文日期显示_年月 
string strYM=currentTime.ToString("y"); 

1.11 取中文日期显示_月日 
string strMD=currentTime.ToString("m"); 

1.12 取中文年月日 
string strYMD=currentTime.ToString("D"); 

1.13 取当前时分,格式为:14:24 
string strT=currentTime.ToString("t"); 

1.14 取当前时间,格式为:2003-09-23T14:46:48 
string strT=currentTime.ToString("s"); 

1.15 取当前时间,格式为:2003-09-23 14:48:30Z 
string strT=currentTime.ToString("u"); 

1.16 取当前时间,格式为:2003-09-23 14:48 
string strT=currentTime.ToString("g"); 

1.17 取当前时间,格式为:Tue, 23 Sep 2003 14:52:40 GMT 
string strT=currentTime.ToString("r"); 

1.18获得当前时间 n 天后的日期时间 
DateTime newDay = DateTime.Now.AddDays(100);

1.16 取当前时间,格式为:2003-09-23 14:48

string strT=currentTime.ToString("g");

1.17 取当前时间,格式为:Tue, 23 Sep 2003 14:52:40 GMT

string strT=currentTime.ToString("r");

1.18获得当前时间 n 天后的日期时间

DateTime newDay = DateTime.Now.AddDays(100);

 

Net中获取一周第一天、最后一天,一月第一天、最后一天


DateTime dt = DateTime.Now; 
//本月第一天时间 
DateTime dt_First = dt.AddDays(-(dt.Day) + 1); 
Label1.Text = dt_First.ToString("yyyy-MM-dd"); 
//将本月月数+1 
DateTime dt2 = dt.AddMonths(1); 
//本月最后一天时间 
DateTime dt_Last = dt2.AddDays(-(dt.Day)); 
Label2.Text = dt_Last.ToString("yyyy-MM-dd"); 
int weeknow = Convert.ToInt32(System.DateTime.Now.DayOfWeek); 
int daydiff = (-1) * weeknow + 1; 
int dayadd = 7 - weeknow; 
//本周第一天 
lblBegin.Text = System.DateTime.Now.AddDays(daydiff).ToString("yyyy-MM-dd"); 
//本周最后一天 
lblEnd.Text = System.DateTime.Now.AddDays(dayadd).ToString("yyyy-MM-dd");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值