asp.net时间类-格式-方法应用

一.当前日期+时间DateTime.Now
c#/asp.net通过DateTime.Now这个类来获取当前的时间。
DateTime dt = DateTime.Now;                     2013/10/24 10:36:57
string dt_st = DateTime.Now.ToString();         2013/10/24 10:36:57
                         
二.DateTime.Now.ToFileTime
long dt_lg = DateTime.Now.ToFileTimeUtc();      130270558814312461      
DateTime dt = DateTime.FromFileTimeUtc(dts);    2013/10/24 10:36:57
             
long dt_st = DateTime.Now.ToFileTime();         130270563304629292
DateTime dt = DateTime.FromFileTime(dt_st);     2013/10/24 10:47:25
           
double dt_db = DateTime.Now.ToOADate();         41571.4963313542
DateTime dt = DateTime.FromOADate(dt_db);       2013/10/24 11:54:43
            
协调世界时:协调世界时 (UTC) 等于本地时间减去 UTC 偏移量
DateTime dt = DateTime.Now.ToUniversalTime();   2013/10/24 3:58:02 
             
三.DateTime.Now.Add
1.计算距此刻为 36 天(即 864 小时)的那一天的当时时间。
DateTime dt = DateTime.Now.Add(new System.TimeSpan(-36, 0, 0, 0));   
当前:2013/10/24 11:09:13  结果:2013/11/29 11:09:13
            
DateTime dt = DateTime.Now.Add(new System.TimeSpan(-36, 0, 0, 0));   
当前:2013/10/24 11:36:57  结果:2013/9/18 11:36:57
            
2.今天
DateTime dt = DateTime.Now;                     2013/10/24 10:36:57
3.昨天,就是今天的日期减一
DateTime dt = DateTime.Now.AddDays(-1);
明天,就是今天的日期加一
DateTime dt = DateTime.Now.AddDays(1);
            
Add同理如下:
Add(时间差)
AddDays(天)
AddHours(时)
AddMilliseconds(毫秒)
AddMinutes(分)
AddMonths(月)
AddSeconds(秒)
AddTicks(周期数)
AddYears(年)
            
四、DateTime.Compare/DateTime.CompareTo
对两个 DateTime 的实例进行比较,并返回一个指示第一个 DateTime 实例是早于、等于还是晚于第二个 DateTime 实例的整数(-1,0,1)。
public static int Compare(DateTime t1,DateTime t2)
示例:t1小于t2
DateTime t1= DateTime.Now;
DateTime t2 = DateTime.Now.AddDays(-5);
int dt = DateTime.Compare(t1, t2);  //结果:-1,t1小于t2
             
五、获取日期
DateTime dt = DateTime.Now.ToLongDateString().ToString();   // 2008年9月4日
DateTime dt = DateTime.Now.ToShortDateString().ToString();  // 2008-9-4
DateTime dt = DateTime.Now.ToString("yyyy-MM-dd");          // 2008-09-04
DateTime dt = DateTime.Now.Date.ToString();                 // 2008-9-4 0:00:00
            
六、获取时间
DateTime dt = DateTime.Now.ToLongTimeString().ToString();   // 20:16:16
DateTime dt = DateTime.Now.ToShortTimeString().ToString();   // 20:16
DateTime dt = DateTime.Now.ToString("hh:mm:ss");        // 08:05:57
DateTime dt = DateTime.Now.TimeOfDay.ToString();        // 20:33:50.7187500
     
七、其它
DateTime dt = DateTime.Now.Year.ToString();          获取年份   // 2008
DateTime dt = DateTime.Now.Month.ToString();      获取月份      // 9
DateTime dt = DateTime dt = DateTime.Now.DayOfWeek.ToString(); 获取星期   // Thursday
DateTime dt = DateTime.Now.DayOfYear.ToString(); 获取第几天     // 248
DateTime dt = DateTime.Now.Hour.ToString();          获取小时   // 20
DateTime dt = DateTime.Now.Minute.ToString();     获取分钟      // 31
DateTime dt = DateTime.Now.Second.ToString();     获取秒数      // 45

//n为一个数,可以数整数,也可以事小数
DateTime dt = dt.AddYears(n).ToString();    //时间加n年
DateTime dt = dt.AddDays(n).ToString();     //加n天
DateTime dt = dt.AddHours(n).ToString();    //加n小时
DateTime dt = dt.AddMonths(n).ToString();   //加n个月
DateTime dt = dt.AddSeconds(n).ToString();  //加n秒
DateTime dt = dt.AddMinutes(n).ToString();  //加n分
             
字符 说明 
(:) 时间分隔符。在某些区域设置中,可以使用其他字符表示时间分隔符。时间分隔符在格式化时间值时分隔小时、分钟和秒。格式化输出中用作时间分隔符的实际字符由系统的 LocaleID 值确定。 
(/) 日期分隔符。在某些区域设置中,可以使用其他字符表示日期分隔符。日期分隔符在格式化日期值时分隔日、月和年。格式化输出中用作日期分隔符的实际字符由您的区域设置确定。 
(%) 用于表明不论尾随什么字母,随后字符都应该以单字母格式读取。也用于表明单字母格式应以用户定义格式读取。有关详细信息,请参阅下面的内容。 
d 将日显示为不带前导零的数字(如 1)。如果这是用户定义的数字格式中的唯一字符,请使用 %d。 
dd 将日显示为带前导零的数字(如 01)。 
ddd 将日显示为缩写形式(例如 Sun)。 
dddd 将日显示为全名(例如 Sunday)。 
M 将月份显示为不带前导零的数字(如一月表示为 1)。如果这是用户定义的数字格式中的唯一字符,请使用 %M。 
MM 将月份显示为带前导零的数字(例如 01/12/01)。 
MMM 将月份显示为缩写形式(例如 Jan)。 
MMMM 将月份显示为完整月份名(例如 January)。 
gg 显示时代/纪元字符串(例如 A.D.) 
h 使用12 小时制将小时显示为不带前导零的数字(例如 1:15:15 PM)。如果这是用户定义的数字格式中的唯一字符,请使用 %h。 
hh 使用 12 小时制将小时显示为带前导零的数字(例如 01:15:15 PM)。 
H 使用 24 小时制将小时显示为不带前导零的数字(例如 1:15:15)。如果这是用户定义的数字格式中的唯一字符,请使用 %H。 
HH 使用 24 小时制将小时显示为带前导零的数字(例如 01:15:15)。 
m 将分钟显示为不带前导零的数字(例如 12:1:15)。如果这是用户定义的数字格式中的唯一字符,请使用 %m。 
mm 将分钟显示为带前导零的数字(例如 12:01:15)。 
s 将秒显示为不带前导零的数字(例如 12:15:5)。如果这是用户定义的数字格式中的唯一字符,请使用 %s。 
ss 将秒显示为带前导零的数字(例如 12:15:05)。 
f 显示秒的小数部分。例如,ff 将精确显示到百分之一秒,而 ffff 将精确显示到万分之一秒。用户定义格式中最多可使用七个 f 符号。如果这是用户定义的数字格式中的唯一字符,请使用 %f。 
t 使用 12 小时制,并对中午之前的任一小时显示大写的 A,对中午到 11:59 P.M 之间的任一小时显示大写的 P。如果这是用户定义的数字格式中的唯一字符,请使用 %t。 
tt 使用 12 小时制,并对中午之前任一小时显示大写的 AM;对中午到 11:59 P.M 之间的任一小时显示大写的 PM。 
y 将年份 (0-9) 显示为不带前导零的数字。如果这是用户定义的数字格式中的唯一字符,请使用 %y。 
yy 以带前导零的两位数字格式显示年份(如果适用)。 
yyy 以三位数字格式显示年份。 
yyyy 以四位数字格式显示年份。 
z 显示不带前导零的时区偏移量(如 -8)。如果这是用户定义的数字格式中的唯一字符,请使用 %z。 
zz 显示带前导零的时区偏移量(例如 -08) 
zzz 显示完整的时区偏移量(例如 -08:00)

  

原文地址:https://www.cnblogs.com/sntetwt/p/3385824.html