C#根据当前时间获取周,月,季度,年度等时间段的起止时间
最近有个统计分布的需求,需要按统计本周,上周,本月,上月,本季度,上季度,本年度,上年度等时间统计分布趋势,所以这里就涉及到计算周,月,季度,年度等的起止时间了,下面总结一下C#中关于根据当前时间获取周,月,季度,年度等时间段的起止时间的方法,废话不多说,直接贴代码,如果你觉得有用,请多多推荐。
DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays( - Convert.ToInt32(dt.DayOfWeek.ToString("d"))); //本周周一 DateTime endWeek = startWeek.AddDays(); //本周周日 DateTime startMonth = dt.AddDays( - dt.Day); //本月月初 DateTime endMonth = startMonth.AddMonths().AddDays(-); //本月月末// endMonth = startMonth.AddDays((dt.AddMonths() - dt).Days - ); //本月月末 DateTime startQuarter = dt.AddMonths( - (dt.Month - ) % ).AddDays( - dt.Day); //本季度初 DateTime endQuarter = startQuarter.AddMonths().AddDays(-); //本季度末 DateTime startYear = , ); //本年年初 DateTime endYear = , ); //本年年末至于昨天、明天、上周、上月、上季度、上年度等等, - Convert.ToInt32(DateTime.Now.DayOfWeek)) - ); //上周一 - Convert.ToInt32(DateTime.Now.DayOfWeek)) - ).AddDays(); //上周末(星期日)//下周 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + ); //下周一 - Convert.ToInt32(DateTime.Now.DayOfWeek)) + ).AddDays(); //下周末 DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + ).AddDays(-).ToShortDateString();//最后一天 //巧用C#里ToString的字符格式化更简便 DateTime.Now.ToString("yyyy-MM-01");//本月初 DateTime.Parse(DateTime.Now.ToString().AddDays(-).ToShortDateString();//本月最后一天 DateTime.Parse(DateTime.Now.ToString().ToShortDateString();//上个月1号 DateTime.Parse(DateTime.Now.ToString().ToShortDateString();//上个月最后一天 DateTime.Parse(DateTime.Now.ToString().ToShortDateString();// 下个月1号 DateTime.Parse(DateTime.Now.ToString().AddDays(-).ToShortDateString();//下下月最后一天 DateTime.Now.AddDays().ToShortDateString();//7天后 DateTime.Now.AddDays(-).ToShortDateString();//7天前 DateTime.Now.Date.ToShortDateString();//本年度,用ToString的字符格式化我们也很容易地算出本年度的第一天和最后一天 DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();//本年度第一天 DateTime.Parse(DateTime.Now.ToString().AddDays(-).ToShortDateString();//本年度最后一天 DateTime.Parse(DateTime.Now.ToString().ToShortDateString(); //上年度第一天, DateTime.Parse(DateTime.Now.ToString().ToShortDateString();//上年度第最后一天, DateTime.Parse(DateTime.Now.ToString().ToShortDateString(); //下年度第一天 DateTime.Parse(DateTime.Now.ToString().AddDays(-).ToShortDateString();//下年度最后一天 //本季度, DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).AddDays( - DateTime.Now.Day);//本季度第一天; DateTime.Parse(DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).ToString().ToShortDateString();//本季度的最后一天 DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).ToString("yyyy-MM-01");//下季度的第一天 DateTime.Parse(DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).ToString().ToShortDateString();// 下季度最后一天 DateTime.Now.AddMonths(- - ((DateTime.Now.Month - ) % )).AddDays( - DateTime.Now.Day);// 上季度第一天 DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).AddDays( - DateTime.Now.Day).AddDays(-).ToShortDateString();// 上季度最后一天
另外,提前透露一下,后续几天会陆续推出web在线打印,在线设计,打印阅览博客一篇,word,PPT,Excel,PDF在线阅览一篇,请大家多多支持。
C#根据当前时间获取周,月,季度,年度等时间段的起止时间的更多相关文章
- (转)C#根据当前时间获取周,月,季度,年度等时间段的起止时间
DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays( - Convert.ToInt32(dt.DayOfWeek.T ...
- 【转载】C#根据当前时间获取周,月,季度,年度等时间段的起止时间
DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek. ...
- python中根据时间获取周数,通过周数获取时间
# 时间## 时间和周数 import time import datetime # 获取今天是第几周 print(time.strftime('%W')) # 获取当前是周几(0-6,0代表周一) ...
- java获取当前时间的年周月季度等的开始结束时间
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Created b ...
- [转] Js获取 本周、本月、本季度、本年、上月、上周、上季度、去年时间段
/** * 针对时间的工具类 */ var DateTimeUtil = function () { /*** * 获得当前时间 */ this.getCurrentDate = function ( ...
- Calendar时间获取天,周,月,季度,年度时间段
Date类 Date类的大多数构造函数和方法都已经抛弃,只留下和毫秒有关的操作,目前常用的构造函数 常用方法 设置毫秒数 读取毫秒数 toString()打印结果 //创建日期对象,把当前的毫秒值转成 ...
- mysql中增加某一时间段内的时间数据(包含:时间、年、月、日、第几周、季度)
创建表dim_date: create table `dim_date` ( `year` int (20), `month` int (20), `day` int (20), `week` int ...
- java 和 mysql 获取周 星期 的第一天 最后一天 或者 月的 日期(字符串转日期,日期转字符串,日期加减)
获取周的第一天,最后一天 System.out.println(getStartEndDate("2016-05-01", 1)); 获取星期的第一天和最后一天 System.ou ...
- c# 根据当前时间获取,本周,本月,本季度,月初,月末,各个时间段(转但是都是使用过)
DateTime dt = DateTime.Now; //当前时间 DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") 24小时制 Dat ...
随机推荐
- C++/CLI——读书笔记《Visual C++/CLI从入门到精通》 第Ⅱ部分
=================================版权声明================================= 版权声明:本文为博主原创文章 未经许可不得转载 请通过右 ...
- MYSQL 5.7 添加新用户
错误描述: 添加用户 insert into mysql.user(Host,User,Password) values("localhost","test", ...
- Spring mvc框架 controller间跳转 ,重定向 ,传参
一.需求背景 1. 需求:spring MVC框架controller间跳转,需重定向.有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示. @Req ...
- emacs 新手笔记(三) —— 为 emacs 做一点简单的定制
ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 在 emacs 启动时,会加载 ~/.emacs 文件.在该文件中编辑一些 lisp 代码,是一种最为简单的 ...
- linux /proc/sys/fs/file-nr /proc/sys/fs/file-max /etc/security/limits.conf 三者的关联
ulimit -n 对应 /etc/security/limits.conf 文件设置 问题: Can’t open so many files 对于linux运维的同学们,相信都遇到过这个问题. 在 ...
- 超链接a的target属性
<a>标签的target意思很明确就是在哪里打开目标文档. 第一种情况: 默认情况:当我们没有设置超链接属性target的value值时默认是_self,即<a target=&qu ...
- HDU 5895 Mathematician QSC(矩阵乘法+循环节降幂+除法取模小技巧+快速幂)
传送门:HDU 5895 Mathematician QSC 这是一篇很好的题解,我想讲的他基本都讲了http://blog.csdn.net/queuelovestack/article/detai ...
- Episode 388: Testing vs Monitoring
A user-facing bug causes search results to be unavailable for your service. Someone suggests adding ...
- WinCE下GPRS自动拨号软件(GPRS AutoDial)
之前在WinCE下调试USB的3G Modem时,写过一个拨号助手RASManager,基本能用.后来车机卖到俄罗斯去,客户老M提供了一个更好的GPRS自动拨号软件GPRS AutoDial,功能完善 ...
- JIRA学习一:Windows下安装破解JIRA6.3.6
安装环境: WindowsXP MySQL-5.5.28 JDK1.6.0_21 JIRA功能全面,界面友好,安装简单,配置灵活,权限管理以及可扩展性方面都十分出色. 一.MySQL建库和建账号 1. ...