C#--获取时间段:今天,昨天,本周,上周,本月,上月,本季度,上季度,今年,去年
参考:https://www.iteye.com/blog/xqf222-1920357
https://blog.csdn.net/u011981242/article/details/51595546
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | /// <summary> /// 获取时间段(某段时间的0时0分0秒-23时59分59秒) /// </summary> public class DateTimeHelper { /// <summary> /// 当前时间 /// </summary> //public static DateTime dt = DateTime.Now; //当前时间 //DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") //24小时制 //DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") //12小时制 /// <summary> /// 今天开始,0时0分0秒: /// </summary> public static DateTime startCurrentDay= Convert.ToDateTime(DateTime.Now.ToString( "D" ).ToString()); /// <summary> /// 今天结束,23时59分59秒: /// </summary> //public static DateTime endCurrentDay = Convert.ToDateTime(DateTime.Now.AddDays(1).ToString("D").ToString()).AddSeconds(-1); //public static DateTime endCurrentDay = DateTime.Now.Date.AddDays(1).AddSeconds(-1); public static DateTime endCurrentDay = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, 23, 59, 59); /// <summary> /// 昨天开始 /// </summary> public static DateTime startLastDay = DateTime.Now.AddDays(-1).Date; /// <summary> /// 昨天结束 /// </summary> public static DateTime endLastDay = startLastDay.AddDays(1).AddSeconds(-1); /// <summary> /// 今天星期几 /// </summary> public static int currentDayOfWeek = Convert.ToInt32(DateTime.Now.DayOfWeek.ToString( "d" )); /// <summary> /// 本周周一 /// </summary> public static DateTime startCurrentWeek = DateTime.Now.AddDays(1 - ((currentDayOfWeek == 0) ? 7 : currentDayOfWeek)).Date; /// <summary> /// 本周周日 /// </summary> public static DateTime endCurrentWeek = startCurrentWeek.AddDays(7).AddSeconds(-1); /// <summary> /// 上周周一 /// </summary> public static DateTime startLastWeek = startCurrentWeek.AddDays(-7).Date; /// <summary> /// 上周周日 /// </summary> public static DateTime endLastWeek = startLastWeek.AddDays(7).AddSeconds(-1); /// <summary> /// 本月月初 /// </summary> public static DateTime startCurrentMonth = DateTime.Now.AddDays(1 - DateTime.Now.Day).Date; //本月月初 /// <summary> /// 本月月末 /// </summary> public static DateTime endCurrentMonth = DateTime.Now.AddDays(1 - DateTime.Now.Day).Date.AddMonths(1).AddSeconds(-1); //本月月末 //DateTime endMonth = startMonth.AddDays((dt.AddMonths(1) - dt).Days - 1); //本月月末 /// <summary> /// 上月月初 /// </summary> public static DateTime startLastMonth = DateTime.Now.AddMonths(-1).Date.AddDays(1 - DateTime.Now.Day); /// <summary> /// 上月月末 /// </summary> public static DateTime endLastMonth = DateTime.Parse(DateTime.Now.AddDays(1 - DateTime.Now.Day).ToShortDateString()).AddSeconds(-1); /// <summary> /// 本季度初 /// </summary> public static DateTime startCurrentQuarter = DateTime.Now.AddMonths(0 - (DateTime.Now.Month - 1) % 3).AddDays(1 - DateTime.Now.Day).Date; //本季度初 /// <summary> /// 本季度末 /// </summary> public static DateTime endCurrentQuarter = startCurrentQuarter.AddMonths(3).AddSeconds(-1); //本季度末 /// <summary> /// 上季度初 /// </summary> public static DateTime startLastQuarter = startCurrentQuarter.AddMonths(-3).Date; /// <summary> /// 上季度末 /// </summary> public static DateTime endLastQuarter = startLastQuarter.AddMonths(3).AddSeconds(-1); /// <summary> /// 今年年初 /// </summary> public static DateTime startCurrentYear = new DateTime(DateTime.Now.Year, 1, 1).Date; //本年年初 /// <summary> /// 今年年末 /// </summary> public static DateTime endCurrentYear = new DateTime(DateTime.Now.Year, 12,31, 23, 59, 59); //本年年末 /// <summary> /// 去年年初 /// </summary> public static DateTime startLastYear = startCurrentYear.AddYears(-1).Date; /// <summary> /// 去年年末 /// </summary> public static DateTime endLastYear = endCurrentYear.AddYears(-1); //至于昨天、明天、上周、上月、上季度、上年度等等,只要AddDays()、AddMonths()、AddYears()这几种方法组合一下就可以了。 } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现