最近有个统计分布的需求,需要按统计本周,上周,本月,上月,本季度,上季度,本年度,上年度等时间统计分布趋势,所以这里就涉及到计算周,月,季度,年度等的起止时间了,下面总结一下C#中关于根据当前时间获取周,月,季度,年度等时间段的起止时间的方法,废话不多说,直接贴代码,如果你觉得有用,请多多推荐。

  1. DateTime dt = DateTime.Now; //当前时间
  2. DateTime startWeek = dt.AddDays( - Convert.ToInt32(dt.DayOfWeek.ToString("d"))); //本周周一
  3. DateTime endWeek = startWeek.AddDays(); //本周周日
  4.  
  5. DateTime startMonth = dt.AddDays( - dt.Day); //本月月初
  6. DateTime endMonth = startMonth.AddMonths().AddDays(-); //本月月末//
  7.  
  8. endMonth = startMonth.AddDays((dt.AddMonths() - dt).Days - ); //本月月末
  9. DateTime startQuarter = dt.AddMonths( - (dt.Month - ) % ).AddDays( - dt.Day); //本季度初
  10. DateTime endQuarter = startQuarter.AddMonths().AddDays(-); //本季度末
  11.  
  12. DateTime startYear = , ); //本年年初
  13. DateTime endYear = , ); //本年年末至于昨天、明天、上周、上月、上季度、上年度等等,
  14.  
  15. - Convert.ToInt32(DateTime.Now.DayOfWeek)) - ); //上周一
  16. - Convert.ToInt32(DateTime.Now.DayOfWeek)) - ).AddDays(); //上周末(星期日)//下周
  17. - Convert.ToInt32(DateTime.Now.DayOfWeek)) + ); //下周一
  18. - Convert.ToInt32(DateTime.Now.DayOfWeek)) + ).AddDays(); //下周末
  19.  
  20. DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + ).AddDays(-).ToShortDateString();//最后一天
  21. //巧用C#里ToString的字符格式化更简便
  22. DateTime.Now.ToString("yyyy-MM-01");//本月初
  23. DateTime.Parse(DateTime.Now.ToString().AddDays(-).ToShortDateString();//本月最后一天
  24. DateTime.Parse(DateTime.Now.ToString().ToShortDateString();//上个月1号
  25. DateTime.Parse(DateTime.Now.ToString().ToShortDateString();//上个月最后一天
  26. DateTime.Parse(DateTime.Now.ToString().ToShortDateString();// 下个月1号
  27. DateTime.Parse(DateTime.Now.ToString().AddDays(-).ToShortDateString();//下下月最后一天
  28. DateTime.Now.AddDays().ToShortDateString();//7天后
  29. DateTime.Now.AddDays(-).ToShortDateString();//7天前
  30. DateTime.Now.Date.ToShortDateString();//本年度,用ToString的字符格式化我们也很容易地算出本年度的第一天和最后一天
  31.  
  32. DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();//本年度第一天
  33. DateTime.Parse(DateTime.Now.ToString().AddDays(-).ToShortDateString();//本年度最后一天
  34.  
  35. DateTime.Parse(DateTime.Now.ToString().ToShortDateString(); //上年度第一天,
  36. DateTime.Parse(DateTime.Now.ToString().ToShortDateString();//上年度第最后一天,
  37.  
  38. DateTime.Parse(DateTime.Now.ToString().ToShortDateString(); //下年度第一天
  39. DateTime.Parse(DateTime.Now.ToString().AddDays(-).ToShortDateString();//下年度最后一天
  40. //本季度,
  41. DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).AddDays( - DateTime.Now.Day);//本季度第一天;
  42. DateTime.Parse(DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).ToString().ToShortDateString();//本季度的最后一天
  43. DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).ToString("yyyy-MM-01");//下季度的第一天
  44. DateTime.Parse(DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).ToString().ToShortDateString();// 下季度最后一天
  45.  
  46. DateTime.Now.AddMonths(- - ((DateTime.Now.Month - ) % )).AddDays( - DateTime.Now.Day);// 上季度第一天
  47. DateTime.Now.AddMonths( - ((DateTime.Now.Month - ) % )).AddDays( - DateTime.Now.Day).AddDays(-).ToShortDateString();// 上季度最后一天

  另外,提前透露一下,后续几天会陆续推出web在线打印,在线设计,打印阅览博客一篇,word,PPT,Excel,PDF在线阅览一篇,请大家多多支持。

C#根据当前时间获取周,月,季度,年度等时间段的起止时间的更多相关文章

  1. (转)C#根据当前时间获取周,月,季度,年度等时间段的起止时间

    DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays( - Convert.ToInt32(dt.DayOfWeek.T ...

  2. 【转载】C#根据当前时间获取周,月,季度,年度等时间段的起止时间

    DateTime dt = DateTime.Now; //当前时间 DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek. ...

  3. python中根据时间获取周数,通过周数获取时间

    # 时间## 时间和周数 import time import datetime # 获取今天是第几周 print(time.strftime('%W')) # 获取当前是周几(0-6,0代表周一) ...

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

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

  5. [转] Js获取 本周、本月、本季度、本年、上月、上周、上季度、去年时间段

    /** * 针对时间的工具类 */ var DateTimeUtil = function () { /*** * 获得当前时间 */ this.getCurrentDate = function ( ...

  6. Calendar时间获取天,周,月,季度,年度时间段

    Date类 Date类的大多数构造函数和方法都已经抛弃,只留下和毫秒有关的操作,目前常用的构造函数 常用方法 设置毫秒数 读取毫秒数 toString()打印结果 //创建日期对象,把当前的毫秒值转成 ...

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

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

  8. java 和 mysql 获取周 星期 的第一天 最后一天 或者 月的 日期(字符串转日期,日期转字符串,日期加减)

    获取周的第一天,最后一天 System.out.println(getStartEndDate("2016-05-01", 1)); 获取星期的第一天和最后一天 System.ou ...

  9. c# 根据当前时间获取,本周,本月,本季度,月初,月末,各个时间段(转但是都是使用过)

    DateTime dt = DateTime.Now;  //当前时间 DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") 24小时制 Dat ...

随机推荐

  1. 安装使用ubuntu问题汇总

    很早以前就安装了ubuntu系统,可是一直没怎么用,也没有深入研究.这两天重装了一下windows,顺带着也重新装了一遍最新的ubuntu14.04.期间碰到了不少问题,一个个解决也花费了不少时间.所 ...

  2. 解决"is marked as crashed and should be repaired"方法

    初次遇到这个问题是在服务器上放置mysql的磁盘空间满了(数据库目录和网站目录一定要做一定的分离,不要放在一个磁盘空间了) 当请求写入数据库时,php会提示 **** is marked as cra ...

  3. 使用Hive或Impala执行SQL语句,对存储在Elasticsearch中的数据操作(二)

    CSSDesk body { background-color: #2574b0; } /*! zybuluo */ article,aside,details,figcaption,figure,f ...

  4. iOS基于MBProgressHUD的二次封装,一行搞定,使用超简单

    MBProgressHUD的使用,临时总结了几款最常用的使用场景: 1.提示消息 用法: [YJProgressHUD showMessage:@"显示文字,1s隐藏" inVie ...

  5. 神奇的expect

    想写自动化脚本的时候,遇到需要交互的,如ssh,scp,就束手无策,直到我知道了expect. expect 有一系列expect-send对组成,就像聊天一样. expect A send B ex ...

  6. 利用apply和arguments复用方法

    首先,有个单例对象,它上面挂了很多静态工具方法.其中有一个是each,用来遍历数组或对象. var nativeForEach = [].forEach var nativeMap = [].map ...

  7. webkit浏览器常见开发问题

    前段时间有人问我一个简单的问题,html如何创建解析的? 我讲了一大堆,什么通过DocumentLoader, CachedResourceLoader, CacheResource, Resourc ...

  8. Scala编程第二课

    函数式编程 函数式编程,结构化编程,OO编程都是编程的方法论. 函数式编程主要思想是把运算过程尽量写成一系列嵌套的函数调用. 特点如下: 1.函数可以像其他数据类型一样使用 可以可以赋值给其他变量,可 ...

  9. HADOOP HDFS的设计

    Hadoop提供的对其HDFS上的数据的处理方式,有以下几种, 1 批处理,mapreduce 2 实时处理:apache storm, spark streaming , ibm streams 3 ...

  10. label的for属性

    一.使用介绍 <label>专为input元素服务,为其定义标记. for属性规定label与哪个表单元素绑定 label和表单控件绑定方式又两种: 1.将表单控件作为label的内容,这 ...