C# 自然周,月,季度计算。
/// <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# 自然周,月,季度计算。的更多相关文章
- java获取当前时间的年周月季度等的开始结束时间
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Created b ...
- mysql中增加某一时间段内的时间数据(包含:时间、年、月、日、第几周、季度)
创建表dim_date: create table `dim_date` ( `year` int (20), `month` int (20), `day` int (20), `week` int ...
- MySql查询日周月
常用计算日期的函数 日 date(日期) = CURDATE() 自然周 YEARWEEK(date_format(日期,'%Y-%m-%d') , 1) = YEARWEEK(now() , 1) ...
- JS判断,今天所在季度,第几周, 季度的第几周,年度第几周
<html> <head> <title>日期判断 周 月 季 年</title> <script type="text/javascr ...
- Flex自定义组件开发之日周月日期选择日历控件
原文:Flex自定义组件开发之日周月日期选择日历控件 使用过DateField的我们都知道,DateField 控件是用于显示日期的文本字段,字段右侧带有日历图标.当用户在控件边框内的 ...
- pg按日,周,月进行数据统计
pg数据库按周,月统计数据 SELECT date_trunc('WEEK', insert_time) as insertDate, SUM(data_increment) as dataTotal ...
- 按年、季度、月分组&&计算日期和时间的函数
Mysql 按年.季度.月分组 按月度分组: select DATE_FORMAT(i.created_at, '%Y-%m月')...................GROUP BY DATE_FO ...
- 自然周与自然月的Hive统计SQL
按照周或者月统计活跃数: 周: SELECT week, COUNT(DISTINCT pin), business_type FROM ( SELECT DISTINCT user_log_acct ...
- PHP计算多少秒/分/时/天/周/月/年之前 : timeago
function timeago( $ptime ) { $etime = time() - $ptime; if ($etime < 59) return '刚刚'; $interval = ...
随机推荐
- 命运Ⅰ&命运Ⅱ
upd:为啥下面的相关博文都是各种退役记(这TM怎么就相关了) 竟然被卡线了,16名,我这几次考试也是炸到了一定境界了... 前三次模拟总榜rk1,第一次分机房rk4,第二次分机房rk11,第三次分机 ...
- 什么是"双活"
什么是"双活" 主备数据中心之间一般有热备.冷备.双活三种备份方式. 热备 热备的情况下,只有主数据中心承担用户的业务,此时备数据中心对主数据中心进行实时的备份,当主数据中心挂掉以 ...
- 大厂面试经:说一下你们线上JVM是如何优化的?
JVM(Java虚拟机)简单来说就是运行Java代码的解释器,作为螺丝钉程序员JVM其实了解下就差不多啦,不懂JVM内部细节照样能写出优质的代码!但是一到造火箭.飞机的场景(面试)不懂JVM的你,会被 ...
- Kubernetes3-kubectl管理Kubernetes容器平台-2
一.kubectl管理集群中deployment资源与service服务 1.相关参数 kubectl edit 编辑服务器侧资源 kubectl replace 替换,使用 yaml 配置文件来替换 ...
- Python - selenium自动化-Chrome(headless)
什么是 Headless Chrome Headless Chrome 是 Chrome 浏览器的无界面形态,可以在不打开浏览器的前提下,使用所有 Chrome 支持的特性运行你的程序.相比于现代浏览 ...
- jQuery源码分析--为什么在参数列表中传入undefined
(function(window, undefined){ //jQuery code; })(window); 为什么要传入undefined? 1.没有传入undefined: <!DOCT ...
- 一个类GraphQL的ORM数据访问框架发布
Zongsoft.Data 发布公告 很高兴我们的 ORM 数据访问框架(Zongsoft.Data)在历经两个 SaaS 产品的应用之后,今天正式宣布对外推广! 这是一个类 GraphQL 风格的 ...
- PHP Laravel 6.2 中用于用户登录的新密码确认流程
Laravel 发布了 v6.2 版本,它添加了一个新的密码确认功能,该功能使你可以要求已登录的用户重新输入密码,然后才能访问路由. 在你执行敏感操作的时候,这个功能就类似GitHub确认对话框.在 ...
- Vue躬行记(9)——Vuex
Vuex是一个专为Vue.js设计的状态管理库,适用于多组件共享状态的场景.Vuex能集中式的存储和维护所有组件的状态,并提供相关规则保证状态的独立性.正确性和可预测性,这不仅让调试变得可追踪,还让代 ...
- 手动部署LNMP环境(CentOS 7)
手动部署LNMP环境(CentOS 7) 一.修改 yum 源 [root@localhost ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/e ...