/// <summary>
        /// 判断时间是否和服务器时间是一天
        /// </summary>
        /// <param name="cs"></param>
        /// <returns></returns>
        public static bool JudgeTimeIsToDay(DateTime cs)
        {

            DateTime start = Convert.ToDateTime(cs.ToShortDateString());
            DateTime end = Convert.ToDateTime(DateTime.Now.ToShortDateString());
            TimeSpan sp = end.Subtract(start);
            ;
        }

        /// <summary>
        /// 计算当前季度多少天
        /// </summary>
        /// <returns></returns>
        public static int DateDiff()
        {
            DateTime start = Convert.ToDateTime(ToFirstDayOfSeason().ToShortDateString());
            DateTime end = Convert.ToDateTime(ToLastDayOfSeason().ToShortDateString());
            TimeSpan sp = end.Subtract(start);

            return sp.Days;
        }

        /// <summary>
        /// 计算当前月有多少天
        /// </summary>
        /// <returns></returns>
        public static int GetMonthDays()
        {
            return System.Threading.Thread.CurrentThread.CurrentUICulture.Calendar.GetDaysInMonth(DateTime.Now.Year, DateTime.Now.Month);
        }

        /// <summary>
        /// 计算本周的周一日期
        /// </summary>
        /// <returns></returns>
        public static DateTime GetMondayDate()
        {
            return GetMondayDate(DateTime.Now);
        }

        /// <summary>
        /// 计算本周周日的日期
        /// </summary>
        /// <returns></returns>
        public static DateTime GetSundayDate()
        {
            return GetSundayDate(DateTime.Now);
        }

        /// <summary>
        /// 获取本月最后一天
        /// </summary>
        /// <param name="datetime"></param>
        /// <returns></returns>
        public static DateTime LastDayOfMonth()
        {
             - DateTime.Now.Day).AddMonths().AddDays(-);
        }

        /// <summary>
        /// 计算本月的第一天
        /// </summary>
        /// <returns></returns>
        public static DateTime FirstDayOfMonth()
        {
             - DateTime.Now.Day);
        }

        /// <summary>
        ///  获取该时间所在季度的第一天
        /// </summary>
        /// <returns></returns>
        public static DateTime ToFirstDayOfSeason()
        {
            return ToFirstDayOfSeason(DateTime.Now);
        }

        /// <summary>
        /// 获取该时间所在季度的最后一天
        /// </summary>
        /// <returns></returns>
        public static DateTime ToLastDayOfSeason()
        {
            return ToLastDayOfSeason(DateTime.Now);
        }

        /// <summary>
        /// 获取该时间所在季度的第一天
        /// </summary>
        /// <param name="target"></param>
        /// <returns></returns>
        public static DateTime ToFirstDayOfSeason(DateTime target)
        {
            int ThisMonth = DateTime.Now.Month;
             ==  ?  : (ThisMonth % )) + ;
            target = target.AddMonths(FirstMonthOfSeason - ThisMonth);

            return Convert.ToDateTime(target.ToString("yyyy-MM-01 HH:mm:ss"));
        }

        /// <summary>
        /// 获取该时间所在季度的最后一天
        /// </summary>
        /// <param name="target"></param>
        /// <returns></returns>
        public static DateTime ToLastDayOfSeason(DateTime target)
        {
            int ThisMonth = DateTime.Now.Month;
             ==  ?  : (ThisMonth % )) + ;
            target = target.AddMonths(FirstMonthOfSeason - ThisMonth);

            ).ToString();
        }

        /// <summary>
        /// 计算本月的第一天
        /// </summary>
        /// <returns></returns>
        public static DateTime FirstDayOfMonth(DateTime datetime)
        {
             - datetime.Day);
        }

        /// <summary>
        /// 获取本月最后一天
        /// </summary>
        /// <param name="datetime"></param>
        /// <returns></returns>
        public static DateTime LastDayOfMonth(DateTime datetime)
        {
             - datetime.Day).AddMonths().AddDays(-);
        }

        /// <summary>
        /// 计算某日起始日期(礼拜一的日期)
        /// </summary>
        /// <param name="someDate">该周中任意一天</param>
        /// <returns>返回礼拜一日期,后面的具体时、分、秒和传入值相等</returns>
        public static DateTime GetMondayDate(this DateTime someDate)
        {
            int i = someDate.DayOfWeek - DayOfWeek.Monday;
            ) i = ;// i值 > = 0 ,因为枚举原因,Sunday排在最前,此时Sunday-Monday=-1,必须+7=6。
            TimeSpan ts = , , );
            return someDate.Subtract(ts);
        }

        /// <summary>
        /// 计算某日结束日期(礼拜日的日期)
        /// </summary>
        /// <param name="someDate">该周中任意一天</param>
        /// <returns>返回礼拜日日期,后面的具体时、分、秒和传入值相等</returns>
        public static DateTime GetSundayDate(this DateTime someDate)
        {
            int i = someDate.DayOfWeek - DayOfWeek.Sunday;
            ) i =  - i;// 因为枚举原因,Sunday排在最前,相减间隔要被7减。
            TimeSpan ts = , , );
            return someDate.Add(ts);
        }

        public static DateTime GetSundayDate(this DateTime someDate, int hour, int minute, int second)
        {
            int i = someDate.DayOfWeek - DayOfWeek.Sunday;
            ) i =  - i;// 因为枚举原因,Sunday排在最前,相减间隔要被7减。
            TimeSpan ts = , , );
            var ret = someDate.Add(ts);

            ret = ret.AddHours(hour - ret.Hour);
            ret = ret.AddMinutes(minute - ret.Minute);
            ret = ret.AddSeconds(second - ret.Second);
            return ret;
        }

C# 自然周,月,季度计算。的更多相关文章

  1. java获取当前时间的年周月季度等的开始结束时间

    import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Created b ...

  2. mysql中增加某一时间段内的时间数据(包含:时间、年、月、日、第几周、季度)

    创建表dim_date: create table `dim_date` ( `year` int (20), `month` int (20), `day` int (20), `week` int ...

  3. MySql查询日周月

    常用计算日期的函数 日 date(日期) = CURDATE() 自然周 YEARWEEK(date_format(日期,'%Y-%m-%d') , 1) = YEARWEEK(now() , 1) ...

  4. JS判断,今天所在季度,第几周, 季度的第几周,年度第几周

    <html> <head> <title>日期判断 周 月 季 年</title> <script type="text/javascr ...

  5. Flex自定义组件开发之日周月日期选择日历控件

    原文:Flex自定义组件开发之日周月日期选择日历控件         使用过DateField的我们都知道,DateField 控件是用于显示日期的文本字段,字段右侧带有日历图标.当用户在控件边框内的 ...

  6. pg按日,周,月进行数据统计

    pg数据库按周,月统计数据 SELECT date_trunc('WEEK', insert_time) as insertDate, SUM(data_increment) as dataTotal ...

  7. 按年、季度、月分组&&计算日期和时间的函数

    Mysql 按年.季度.月分组 按月度分组: select DATE_FORMAT(i.created_at, '%Y-%m月')...................GROUP BY DATE_FO ...

  8. 自然周与自然月的Hive统计SQL

    按照周或者月统计活跃数: 周: SELECT week, COUNT(DISTINCT pin), business_type FROM ( SELECT DISTINCT user_log_acct ...

  9. PHP计算多少秒/分/时/天/周/月/年之前 : timeago

    function timeago( $ptime ) { $etime = time() - $ptime; if ($etime < 59) return '刚刚'; $interval = ...

随机推荐

  1. Spring MVC-------文件上传,单文件,多文件,文件下载

    Spring MVC 框架的文件上传是基于 commons-fileupload 组件的文件上传,只不过 Spring MVC 框架在原有文件上传组件上做了进一步封装,简化了文件上传的代码实现,取消了 ...

  2. [LINQ2Dapper]最完整Dapper To Linq框架(五)---查看Linq实际执行的SQL

    此例子是使用LINQ2Dapper封装,效率优于EntityFramwork,并且支持.NetFramework和.NetCore框架,只依赖于Dapper支持.net framework4.6.1及 ...

  3. 使用客户机和主机做DNS服务正向解析及小问题解决

    1.下载yum包 命令:yum install bind-chroot 2.更改配置文件 在这里,要了解到主配置文件为:   /etc/named.conf 但是,为了避免经常修改主配置文件named ...

  4. 致和我一样迷茫的Java程序员们

    缘起 从事近7年Java开发之后,在2019年这个寒冷的冬天里,我终于迎来了人生中的第一次裁员. 啊,30岁之后的裁员真让人焦虑. 按照以往惯例,在面试心仪的公司之前,需要先面试一些不那么心仪的公司热 ...

  5. Windows下Apache与PHP的安装与配置

    下载Apache Apache的官网(http://httpd.apache.org) 1.把解压后的Apache拷贝到要安装的目标位置.建议拷贝到C盘根目录下,因为这是其默认设置. 2.我选择的是拷 ...

  6. 【计算机网络】TCP基础知识详解

    1. TCP概念相关 [!NOTE] TCP(Transmission Control Protocol),又叫传输控制协议. TCP协议是面向连接的,可靠的,基于字节流的传输协议.在基于 TCP 进 ...

  7. python:正则0

    Python3 正则表达式特殊符号及用法(详细列表) 正则表达式的强大之处在于特殊符号的应用,特殊符号定义了字符集合.子组匹配.模式重复次数.正是这些特殊符号使得一个正则表达式可以匹配字符串集合而不只 ...

  8. 记一次YUV图像分析(二)

    当你有一帧图像的原始(Raw)数据,不知道是RGB像素图还YUV格式时,可以利用YUV的灰度图成块状能量的特点(这也是为什么YUV格式可以被压缩编码的原因),进行简单的分辨. 当你用hexdump一类 ...

  9. 十、GAP

    1.1     背景 GAP(Generic Access Profile)位于主机协议栈的最顶层,用来定义BLE设备在待机或者连接状态中的行为,该Profile保证不同的Bluetooth产品可以互 ...

  10. Alibaba Nacos 学习(一):Nacos介绍与安装

    Alibaba Nacos 学习(一):Nacos介绍与安装 Alibaba Nacos 学习(二):Spring Cloud Nacos Config Alibaba Nacos 学习(三):Spr ...