5-C#的DateTime使用

发布于:2025-06-09 ⋅ 阅读:(18) ⋅ 点赞:(0)

C#的DateTime使用

1.创建时间对象

            DateTime dt0 = new DateTime();
            DateTime dt1 = new DateTime(2022, 11, 28); // 只有日期
            DateTime dt2 = new DateTime(2022, 11, 28, 8, 12, 23); // 日期与时间
            DateTime dt3 = new DateTime(2022, 11, 28, 8, 12, 23, 300); // 含毫秒
            Console.WriteLine(dt0);
            Console.WriteLine(dt1);
            Console.WriteLine(dt2);
            Console.WriteLine(dt3.Millisecond);
            //            1 / 1 / 0001 12:00:00 AM
            //11 / 28 / 2022 12:00:00 AM
            //11 / 28 / 2022 8:12:23 AM
            //11 / 28 / 2022 8:12:23 AM

2.创建时间对象

DateTime dt = new DateTime(2024, 11, 28, 8, 12, 23, 300); // 含毫秒
Console.WriteLine($"日期:{dt.Date}");
Console.WriteLine($"年份:{dt.Year}");
Console.WriteLine($"月份:{dt.Month}");
Console.WriteLine($"日:{dt.Day}");
Console.WriteLine($"时:{dt.Hour}");
Console.WriteLine($"分:{dt.Minute}");
Console.WriteLine($"秒:{dt.Second}");
Console.WriteLine($"毫秒:{dt.Millisecond}");

3.简单延时

            var startick = DateTime.Now.Ticks;
            long endtick;
            while (true) // 循环执行 10 秒
            {
                endtick = DateTime.Now.Ticks;
                Console.WriteLine(DateTime.Now.Ticks);
                if ((endtick - startick) / 10000000 > 10)
                    break;
            }

4.格式化时间输出

            DateTime dt = DateTime.Now;
            Console.WriteLine("yyyy MM dd : " + dt.ToString("yyyy MM dd"));
            Console.WriteLine("yyyy/MM/dd : " + dt.ToString("yyyy/MM/dd"));
            Console.WriteLine("yyyyy MM dd ddd : " + dt.ToString("yyyyy MM dd ddd"));
            Console.WriteLine("yyyy MM dd dddd : " + dt.ToString("yyyy MM dd dddd"));
            Console.WriteLine("yyyy MM dd h:mm:ss : " + dt.ToString("yyyy MM dd h:mm:ss"));
            Console.WriteLine("yyyyy MM dd hh:mm:ss : " + dt.ToString("yyyyy MM dd hh:mm:ss"));
            Console.WriteLine("yyyyy MM dd H:mm:ss : " + dt.ToString("yyyyy MM dd H:mm:ss"));
            Console.WriteLine("yyyyy MM dd HH:mm:ss : " + dt.ToString("yyyyy MM dd HH:mm:ss"));
            Console.WriteLine("yyyyy MM dd h:mm:ss t : " + dt.ToString("yyyyy MM dd h:mm:ss t"));
            Console.WriteLine("yyyyy MM dd h:mm:ss tt : " + dt.ToString("yyyyy MM dd h:mm:ss tt"));

5.格式化时间输出

‌ DateTime.Now.Ticks ‌属性在C#中表示自公元0001年1月1日午夜12:00:00以来经过的100纳秒间隔数,,10000000为一秒。

6.日期相加减

public DateTime AddYear(int value);       // value 是年数,可以是正或负
public DateTime AddMonth(int value);      // value 是月数,可以是正或负
public DateTime AddDays(double value);    // value 是天数,可以是正或负
public DateTime AddHours(double value);   // value 是小时,可以是正或负
public DateTime AddMinutes(double value);  // value 是分钟,可以是正或负
public DateTime AddSeconds(double value); // value 是秒数,可以是正或负
public DateTime AddMilliseconds(double value); // value 是毫秒,可以是正或负
public DateTime AddTicks(long value);     // value 是 Tick 数,可以是正或负

7.转字符串

//2008年4月24日
System.DateTime.Now.ToString("D");
//2008-4-24
System.DateTime.Now.ToString("d");
//2008年4月24日 16:30:15
System.DateTime.Now.ToString("F");
//2008年4月24日 16:30
System.DateTime.Now.ToString("f");
//2008-4-24 16:30:15
System.DateTime.Now.ToString("G")
//2008-4-24 16:30
System.DateTime.Now.ToString("g");
//16:30:15
System.DateTime.Now.ToString("T");
//16:30
System.DateTime.Now.ToString("t");
//2008年4月24日 8:30:15
System.DateTime.Now.ToString("U");
//2008-04-24 16:30:15Z
System.DateTime.Now.ToString("u");
//4月24日
System.DateTime.Now.ToString("m");
System.DateTime.Now.ToString("M");
//Tue, 24 Apr 2008 16:30:15 GMT
System.DateTime.Now.ToString("r");
System.DateTime.Now.ToString("R");
//2008年4月
System.DateTime.Now.ToString("y");
System.DateTime.Now.ToString("Y");
//2008-04-24T15:52:19.1562500+08:00
System.DateTime.Now.ToString("o");
System.DateTime.Now.ToString("O");
//2008-04-24T16:30:15
System.DateTime.Now.ToString("s");
//2008-04-24 15:52:19
System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff")
//2008年04月24 15时56分48秒
System.DateTime.Now.ToString("yyyy年MM月dd HH时mm分ss秒");
//星期二, 四月 24 2008
System.DateTime.Now.ToString("dddd, MMMM dd yyyy");
//二, 四月 24 '08
System.DateTime.Now.ToString("ddd, MMM d \"'\"yy");
//星期二, 四月 24
System.DateTime.Now.ToString("dddd, MMMM dd");
//4-08
System.DateTime.Now.ToString("M/yy");
//24-04-08
System.DateTime.Now.ToString("dd-MM-yy");