取得某月和上个月第一天和最后一天的方法

  1. /// <summary>
  2. /// 取得某月的第一天
  3. /// </summary>
  4. /// <param name="datetime">要取得月份第一天的时间</param>
  5. /// <returns></returns>
  6. private DateTime FirstDayOfMonth(DateTime datetime)
  7. {
  8. return datetime.AddDays(1 - datetime.Day);
  9. }
  10. /**//// <summary>
  11. /// 取得某月的最后一天
  12. /// </summary>
  13. /// <param name="datetime">要取得月份最后一天的时间</param>
  14. /// <returns></returns>
  15. private DateTime LastDayOfMonth(DateTime datetime)
  16. return datetime.AddDays(1 - datetime.Day).AddMonths(1).AddDays(-1);
  17. }
  18. /**//// <summary>
  19. /// 取得上个月第一天
  20. /// </summary>
  21. /// <param name="datetime">要取得上个月第一天的当前时间</param>
  22. /// <returns></returns>
  23. private DateTime FirstDayOfPreviousMonth(DateTime datetime)
  24. {
  25. return datetime.AddDays(1 - datetime.Day).AddMonths(-1);
  26. }
  27. /**//// <summary>
  28. /// 取得上个月的最后一天
  29. /// </summary>
  30. /// <param name="datetime">要取得上个月最后一天的当前时间</param>
  31. /// <returns></returns>
  32. private DateTime LastDayOfPrdviousMonth(DateTime datetime)
  33. {
  34. return datetime.AddDays(1 - datetime.Day).AddDays(-1);
  35. }

C# DateTime 日期加1天 减一天 加一月 减一月 等方法

  1. //今天
  2. DateTime.Now.Date.ToShortDateString();
  3. //昨天,就是今天的日期减一
  4. DateTime.Now.AddDays(-1).ToShortDateString();
  5. //明天,同理,加一
  6. DateTime.Now.AddDays(1).ToShortDateString();
  7. //本周(要知道本周的第一天就得先知道今天是星期几,从而得知本周的第一天就是几天前的那一天,要注意的是这里的每一周是从周日始至周六止
  8. DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
  9. DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek)))).ToShortDateString();
  10. //如果你还不明白,再看一下中文显示星期几的方法就应该懂了
  11. //由于DayOfWeek返回的是数字的星期几,我们要把它转换成汉字方便我们阅读,有些人可能会用switch来一个一个地对照,其实不用那么麻烦的
  12. string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
  13. Day[Convert.ToInt16(DateTime.Now.DayOfWeek)];
  14. //上周,同理,一个周是7天,上周就是本周再减去7天,下周也是一样
  15. DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
  16. DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7).ToShortDateString();
  17. //下周
  18. DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
  19. DateTime.Now.AddDays(Convert.ToDouble((6 - Convert.ToInt16(DateTime.Now.DayOfWeek))) + 7).ToShortDateString();
  20. //本月,很多人都会说本月的第一天嘛肯定是1号,最后一天就是下个月一号再减一天。当然这是对的
  21. //一般的写法
  22. DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1"; //第一天
  23. DateTime.Parse(DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + "1").AddMonths(1).AddDays(-1).ToShortDateString();//最后一天
  24. //巧用C#里ToString的字符格式化更简便
  25. DateTime.Now.ToString("yyyy-MM-01");
  26. DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).AddDays(-1).ToShortDateString();
  27. //上个月,减去一个月份
  28. DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1).ToShortDateString();
  29. DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
  30. //下个月,加去一个月份
  31. DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();
  32. DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(2).AddDays(-1).ToShortDateString();
  33. //7天后
  34. DateTime.Now.Date.ToShortDateString();
  35. DateTime.Now.AddDays(7).ToShortDateString();
  36. //7天前
  37. DateTime.Now.AddDays(-7).ToShortDateString();
  38. DateTime.Now.Date.ToShortDateString();
  39. //本年度,用ToString的字符格式化我们也很容易地算出本年度的第一天和最后一天
  40. DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).ToShortDateString();
  41. DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).AddDays(-1).ToShortDateString();
  42. //上年度,不用再解释了吧
  43. DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1).ToShortDateString();
  44. DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddDays(-1).ToShortDateString();
  45. //下年度
  46. DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(1).ToShortDateString();
  47. DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(2).AddDays(-1).ToShortDateString();
  48. //本季度,很多人都会觉得这里难点,需要写个长长的过程来判断。其实不用的,我们都知道一年四个季度,一个季度三个月
  49. //首先我们先把日期推到本季度第一个月,然后这个月的第一天就是本季度的第一天了
  50. DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
  51. //同理,本季度的最后一天就是下季度的第一天减一
  52. DateTime.Parse(DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
  53. //下季度,相信你们都知道了。。。。收工
  54. DateTime.Now.AddMonths(3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
  55. DateTime.Parse(DateTime.Now.AddMonths(6 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();
  56. //上季度
  57. DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01");
  58. DateTime.Parse(DateTime.Now.AddMonths(0 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy-MM-01")).AddDays(-1).ToShortDateString();

C# DateTime 月第一天和最后一天 取法的更多相关文章

  1. WinForm------DateTime获取月第一天和最后一天取法

    转载: http://blog.csdn.net/livening/article/details/6049341/ 代码: /// <summary> /// 取得某月的第一天 /// ...

  2. 用js获取周、月第一天和最后一天(转载)

    var getCurrentWeek = function (day) { var days = ["周日", "周一", "周二", &q ...

  3. js 获取某月第一天和最后一天

    1.获取某月第一天和最后一天日期 function getDateByMonth (timeStamp) { let inDate = new Date(timeStamp) let year = i ...

  4. 获取某月第一天,最后一天的sql server脚本 【转】http://blog.csdn.net/chaoowang/article/details/9167969

    这是计算一个月第一天的SQL 脚本:    SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) --当月的第一天 SELECT DATEADD(mm, DA ...

  5. 获取某月第一天,最后一天的sql server脚本

    本文来自:http://blog.csdn.net/chaoowang/article/details/9167969 这是计算一个月第一天的SQL 脚本:   SELECT DATEADD(mm, ...

  6. asp编程中获取上下两个月第一天和最后一天的代码

    经常在asp编程遇到要获取上个月第一天和最后一天的日期,获取下个月第一天和最后一天的日期.这里总结了一下,将这些asp代码全部列出来了,以便以后遇到的时候使用.    上个月第一天:<%=dat ...

  7. C#获取周的第一天、最后一天、月第一天和最后一天

    [csharp] view plaincopyprint? public class DateTimeTool { /// <summary> /// 获取指定日期所在周的第一天,星期天为 ...

  8. java时间计算,获取某月第一天和最后一天

    //获取前月的第一天 SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); //获取当前月第一天: Calendar ...

  9. java 获取当月第一天和最后一天 获取前一个月第一天和最后一天

    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");                    //获取前月的第一 ...

随机推荐

  1. adobe flash player不是最新版本

    adobe flash player不是最新版本

  2. 如何解决请求URL长度超过配置的maxurlLength值问题

    当我们批量请求的数据太多时,会出现请求的url长度超过配置maxurllength值的问题(比如一次性操作1000条数据) 1.问题描述: 我在进行批量选择单据进行发送时,出现这个问题(批量500条) ...

  3. AOJ1024 Cleaning Robot 2.0

    先说一说这个OJ:貌似是11区某大学ACM的OJ,叫AIZU ONLINE JUDGE,貌似还可以看到部分犇的代码...跪跪跪 然后知道这个OJ是某场比赛安利的= = 接下来将做法: 首先我们可以发现 ...

  4. git and github问题集锦

    本人遇到的:

  5. bzoj1086

    题解: 树分块 每一次当个数大于B的时候分成一块 省会城市为当前子树根 然后最后剩下的节点和前一个分为一块 代码: #include<bits/stdc++.h> using namesp ...

  6. win10下用u盘装centos后如何修复win10引导

    相关参考: http://www.cnblogs.com/xiaoyao-lxy/p/5561728.html#wu

  7. Eclipse中复制项目重命名后重新发布,项目名在地址栏仍然是原来的项目名”的问题

    转载自: http://www.cnblogs.com/chenxueling/p/5474717.html 将20170331-JavaEE-SSH项目复制一份,重命名为20170407-JavaE ...

  8. WTForms组件

    WTForms组件 WTForms是一个支持多个web框架的form组件,主要用于对用户请求数据进行验证. 注意: from wtforms import Form 和 from flask_wtf ...

  9. 几个你所不知道的技巧助你写出更优雅的vue.js代码

    1. watch 与 computed 的巧妙结合 如上图,一个简单的列表页面. 你可能会这么做: created(){ this.fetchData() }, watch: { keyword(){ ...

  10. HDU 3829

    http://acm.hdu.edu.cn/showproblem.php?pid=2970 P个小朋友喜欢猫讨厌狗,喜欢狗讨厌猫,移除一定数量的猫狗,使开心的小朋友数量最多 二分图最大独立集=顶点数 ...