c# 日期处理

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);

  • 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); //yyyymm等可以设置,比如Label16.Text = string.Format("{0:yyyyMMdd}",dt);
  • DateTime dt = DateTime.Now; //当前时间
  • DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d"))); //本周周一
  • DateTime endWeek = startWeek.AddDays(6); //本周周日
  • DateTime startMonth = dt.AddDays(1 - dt.Day); //本月月初
  • DateTime endMonth = startMonth.AddMonths(1).AddDays(-1); //本月月末
  • //DateTime endMonth = startMonth.AddDays((dt.AddMonths(1) - dt).Days - 1); //本月月末
  • DateTime startQuarter = dt.AddMonths(0 - (dt.Month - 1) % 3).AddDays(1 - dt.Day); //本季度初
  • DateTime endQuarter = startQuarter.AddMonths(3).AddDays(-1); //本季度末
  • DateTime startYear = new DateTime(dt.Year, 1, 1); //本年年初
  • DateTime endYear = new DateTime(dt.Year, 12, 31); //本年年末