C#日期格式化

之前在网上看到一个挺有用关于C#日期转换的东西,转载一下:https://www.cnblogs.com/wqqblogs/archive/2011/06/14/2080338.html

日期转化
DateTime d t= DateTime.Now;
dt.ToString();‘2005-11-5  13:21:25
dt.ToFileTime().ToString();‘127756416859912000
dt.ToFileTimeUtc().ToString();127756704859912816
dt.ToLocalTime().ToString();‘2005-11-5 21:21:25
dt.ToLongDateString().ToString();‘2005-11-5
dt.ToLongTimeString().ToString();’13:21:25
dt.ToOADate().ToString();‘38661.5565508218
dt.ToShortDateString().ToString();‘2005-11-5
dt.ToShortTimeString().ToString();’13:21
dt.ToUniversalTime().ToString();‘2005-11-5 5:21:25
dt.Year.ToString();‘2005
dt.Date.ToString();‘2005-11-5 0:00:00
dt.DayOfWeek.ToString();‘Saturday
dt.DayOfYear.ToString();‘309
dt.Hour.ToString();’13
dt.Millisecond.ToString();‘441
dt.Minute.ToString();’30
dt.Month.ToString();’11
dt.Second.ToString();’28
dt.Ticks.ToString();‘632667942284412864
dt.TimeOfDay.ToString();’13:30:28.4412864
dt.ToString();‘2005-11-5 13:47:04
dt.AddYears(1).ToString();‘2006-11-5 13:47:04
dt.AddDays(1.1).ToString();‘2005-11-6 16:11:04
dt.AddHours(1.1).ToString();‘2005-11-5 14:53:04
dt.AddMilliseconds(1.1).ToString();‘2005-11-5 13:47:04
dt.AddMonths(1).ToString();‘2005-12-5 13:47:04
dt.AddSeconds(1.1).ToString();‘2005-11-5 13:47:05
dt.AddMinutes(1.1).ToString();‘2005-11-5 13:48:10
dt.AddTicks(1000).ToString();‘2005-11-5 13:47:04
dt.CompareTo(dt).ToString();‘0
dt.Add(?).ToString();‘问号为一个时间段
dt.Equals(“2005-11-6 16:11:04”).ToString();‘False
dt.Equals(dt).ToString();‘True
dt.GetHashCode().ToString();‘1474088234
dt.GetType().ToString();‘System.DateTime
dt.GetTypeCode().ToString();‘DateTime
dt.GetDateTimeFormats(‘s’)[0].ToString();‘2005-11-05T14:06:25
dt.GetDateTimeFormats(‘t’)[0].ToString();’14:06
dt.GetDateTimeFormats(‘y’)[0].ToString();‘2005年11月
dt.GetDateTimeFormats(‘D’)[0].ToString();‘2005年11月5日
dt.GetDateTimeFormats(‘D’)[1].ToString();‘2005 11 05
dt.GetDateTimeFormats(‘D’)[2].ToString();‘星期六 2005 11 05
dt.GetDateTimeFormats(‘D’)[3].ToString();‘星期六 2005年11月5日
dt.GetDateTimeFormats(‘M’)[0].ToString();’11月5日
dt.GetDateTimeFormats(‘f’)[0].ToString();‘2005年11月5日 14:06
dt.GetDateTimeFormats(‘g’)[0].ToString();‘2005-11-5 14:06
dt.GetDateTimeFormats(‘r’)[0].ToString();‘Sat, 05 Nov 2005 14:06:25 GMT
string.Format(“{0:d}”,dt);‘2005-11-5
string.Format(“{0:D}”,dt);‘2005年11月5日
string.Format(“{0:f}”,dt);‘2005年11月5日 14:23
string.Format(“{0:F}”,dt);‘2005年11月5日 14:23:23
string.Format(“{0:g}”,dt);‘2005-11-5 14:23
string.Format(“{0:G}”,dt);‘2005-11-5 14:23:23
string.Format(“{0:M}”,dt);’11月5日
string.Format(“{0:R}”,dt);‘Sat, 05 Nov 2005 14:23:23 GMT
string.Format(“{0:s}”,dt);‘2005-11-05T14:23:23
string.Format(“{0:t}”,dt);’14:23
string.Format(“{0:T}”,dt);’14:23:23
string.Format(“{0:u}”,dt);‘2005-11-05 14:23:23Z
string.Format(“{0:U}”,dt);‘2005年11月5日 6:23:23
string.Format(“{0:Y}”,dt);‘2005年11月
string.Format(“{0}”,dt);‘2005-11-5 14:23:23
string.Format(“{0:yyyyMMddHHmmssffff}”,dt);

比较两时间大小
1、比较时间大小的实验
string st1=”12:13″;
string st2=”14:14″;
DateTime dt1=Convert.ToDateTime(st1);
DateTime dt2=Convert.ToDateTime(st2);
DateTime dt3=DateTime.Now;
if(DateTime.Compare(dt1,dt2)>0)
msg.Text=st1+”>”+st2;
else
msg.Text=st1+”<“+st2;
msg.Text+=”\r\n”+dt1.ToString();
if(DateTime.Compare(dt1,dt3)>0)
msg.Text+=”\r\n”+st1+”>”+dt3.ToString();
else
msg.Text+=”\r\n”+st1+”<“+dt3.ToString();

2、计算两个时间差值的函数,返回时间差的绝对值:
         private string DateDiff(DateTime DateTime1,DateTime DateTime2)
         {
             string dateDiff=null;
             try
             {
                 TimeSpan ts1=new   TimeSpan(DateTime1.Ticks);
                 TimeSpan ts2=new   TimeSpan(DateTime2.Ticks);
                 TimeSpan ts=ts1.Subtract(ts2).Duration();
                 dateDiff=ts.Days.ToString()+"天"
                         +ts.Hours.ToString()+"小时"
                         +ts.Minutes.ToString()+"分钟"
                         +ts.Seconds.ToString()+"秒";
             }
             catch
             {
             }
             return dateDiff;
         }
3、实现计算DateTime1-36天=DateTime2的功能
    TimeSpan ts=new TimeSpan(40,0,0,0);
    DateTime dt2=DateTime.Now.Subtract(ts);
    msg.Text=DateTime.Now.ToString()+"-"+ts.Days.ToString()+"天\r\n";
    msg.Text+=dt2.ToString();

加入讨论

电子邮件地址不会被公开。