c#时间对象(时间间隔)相关计算

            // 时间对象
            // DateTime 用来获取时间 


            // 时间对象是一个结构体 
            // 获取当前时间 
            DateTime dt = DateTime.Now;
            Console.WriteLine(dt);

            // 获取utc时间 国际时间 
            DateTime dt1 = DateTime.UtcNow;
            Console.WriteLine(dt1);

            // 获取指定时间 
            // new DateTime(年, 月, 日, 时, 分, 秒);
            DateTime dt2 = new DateTime(2024, 10, 12, 10, 10, 10);
            Console.WriteLine(dt2);

            // 获取年月日 时分秒
            int year = dt.Year;
            Console.WriteLine(year);
            int month = dt.Month;
            Console.WriteLine(month);
            int day = dt.Day;
            Console.WriteLine(day);
            // 这是枚举类型的 
            DayOfWeek workDay = dt.DayOfWeek;
            Console.WriteLine(workDay);

            int hour = dt.Hour; // 获取小时
            Console.WriteLine(hour);
            int minute = dt.Minute; // 获取分钟
            Console.WriteLine(minute);
            int second = dt.Second; // 获取秒钟
            Console.WriteLine(second);

            int microsecond = dt.Millisecond; // 获取毫秒
            Console.WriteLine(microsecond);

            // 获取时间戳 
            // 时间戳 是指格林威治时间 1970年1月1日 00:00:00 到现在的毫秒值, 北京时间 1970年1月1日 8:00:00 到现在的毫秒值

            // DateTimeOffset 常用来操作时区 时间转换的对象处理 

            long time = new DateTimeOffset(dt).ToUnixTimeMilliseconds();

            Console.WriteLine(time);

            Console.WriteLine(GetDay(1937, 7, 7));


            Console.ReadLine();
        }

 

 2. 时间间隔

            // 时间间隔 就是时间差对象   从某一天到另一天间隔了多久 
            // 时间间隔是 两个时间对象相减得到的时间对象 

            DateTime dt = new DateTime(2005, 5, 5);
            DateTime dt1 = DateTime.Now;

            TimeSpan time = dt1 - dt;


            Console.WriteLine(time.Days); // 获取天数部分
            Console.WriteLine(time.Hours); // 获取小时  部分
            Console.WriteLine(time.Minutes); // 获取分钟  部分
            Console.WriteLine(time.Seconds); // 获取秒  部分
            Console.WriteLine(time.TotalDays); // 获取有多少天 是一个小数
            Console.WriteLine(time.TotalHours); // 获取有多少小时 是一个小数
            Console.WriteLine(time.TotalMinutes); // 获取有多少分钟 是一个小数
            Console.WriteLine(time.TotalSeconds); // 获取有多少秒钟 是一个小数

2-1 时间间隔的相关计算 

            // 获取当前时间 
            DateTime dt = DateTime.Now;

            DateTime dt1 = dt.AddDays(1); // 在当前时间的基础上加 一天 
            DateTime dt2 = dt.AddYears(1); // 在当前时间的基础上加 一年
            DateTime dt3 = dt.AddMonths(1); // 在当前时间的基础上加 一月
            DateTime dt4 = dt.AddHours(1); // 在当前时间的基础上加 一小时
            DateTime dt5 = dt.AddMinutes(1); // 在当前时间的基础上加 一分钟
            DateTime dt6 = dt.AddSeconds(1); // 在当前时间的基础上加 一秒钟

            bool b1 = dt1 < dt; // 时间在后面的大 时间在前面的小 
            Console.WriteLine(b1);

            // 时间间隔运算 
            TimeSpan timeSpan = new TimeSpan(1, 1, 1, 1, 1);
            TimeSpan ts = timeSpan + timeSpan;
            TimeSpan ts1 = timeSpan - timeSpan;
            bool b = timeSpan > ts; // 两个时间大小比较 时间间隔比较长的大 短的小 
            Console.WriteLine(b);

            Console.WriteLine(ts1 + "----------------------");
            timeSpan.Add(timeSpan); // 在当前时间间隔的基础上加上一个新的时间间隔   等价于 timeSpan + timeSpan 

            Console.WriteLine(dt1);
            Console.WriteLine(dt2);
            Console.WriteLine(dt3);
            Console.WriteLine(dt4);
            Console.WriteLine(dt5);
            Console.WriteLine(dt6);

            // 1. 时间格式化 
            string str = dt.ToString("d"); // tostring 中提供了格式化时间字符串的方法 
            // 自定义格式化的形式 
            string str1 = dt.ToString("yyyy年MM月dd日 hh:mm:ss"); // tostring 中提供了格式化时间字符串的方法 
            Console.WriteLine(str1);

            // 2. 解析时间字符串 为 时间对象
            DateTime dt7 = DateTime.Parse("2024/12/12 12:12:12");
            Console.WriteLine(dt7);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值