欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-06-11 13:04:09
...
一.当前日期+时间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)