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 = ...
随机推荐
- RPA - UiPath简明教程 ║ .NET的又一领域
RPA概念 RPA全称为:Robotic Process Automation,即机器人流程自动化. Robotic:这里的机器人是一个虚拟的概念,并不是需要一个实体的机器人,它只是流程的执行体,或者 ...
- GitHub 发布了官方 App,还打算冰封你的代码一千年
11 月 13 日,GitHub Universe 2019 开发者大会上,公布了大量新功能,包括发布 GitHub 移动版.GitHub Actions 和 Packages 正式版上市.重新设计了 ...
- linux环境中,两个不同网段的机器互通
linux环境中,两个不同网段的机器互通 人评论3690人阅读2019-11-18 14:50:21 环境如下: host1 单网卡 eth0 172.24.100.15/16 hos ...
- JVM,JDK,JRE
JVM,JDK,JRE 什么是JVM Java 虚拟机. 这个名词由Java和虚拟机前后两部分组成. 它有和其他虚拟机共性:JVM是通过软件模拟的计算机系统. 它也有自己的特性:JVM使用软件模拟的指 ...
- hdu 2554 最短路 (dijkstra)
最短路Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
- nyoj 399-整除个数 (整除)
399-整除个数 内存限制:64MB 时间限制:3000ms 特判: No 通过数:9 提交数:18 难度:1 题目描述: 1.2.3… …n这n(0<n<=1000000000)个数中有 ...
- 力扣(LeetCode)学生出勤记录I 个人题解
给定一个字符串来代表一个学生的出勤记录,这个记录仅包含以下三个字符: 'A' : Absent,缺勤 'L' : Late,迟到 'P' : Present,到场 如果一个学生的出勤记录中不超过一个' ...
- 管道 |、|&、tee
用“|”或“|&”隔开两个命令之间形成一个管道,左边命令的标准输出(|)或者标准错误输出(|&)信息流入到右边命令的标准输入,即左边命令的标准输出作为右边命令的标准输入.如: make ...
- root权限后,不要忘了还有selinux
下面的例子运行在中兴android 5.0手机上. 当我们使用root权限的python去创建socket监听端口8088时,selinux向kmsg输出了下面的记录 python-android5 ...
- libdispatch.dylib中dispatch_group的实现
semaphore和group都是libdispatch提供的基于信号量的同步机制,dispatch_group继承自dispatch_semaphore,使用libdispatch层的信号量算法.d ...