c# 获取某日期所在周的第一天和最后一天

65 篇文章 0 订阅
22 篇文章 0 订阅
转自:http://blog.csdn.net/joyhen/article/details/9179763
  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5.   
  6. namespace WyfClass  
  7. {  
  8. public class tools  
  9. {  
  10. /// <summary>  
  11. /// 得到本周第一天(以星期天为第一天)  
  12. /// </summary>  
  13. /// <param name="datetime"></param>  
  14. /// <returns></returns>  
  15. public DateTime GetWeekFirstDaySun(DateTime datetime)  
  16. {  
  17.     //星期天为第一天  
  18.     int weeknow = Convert.ToInt32(datetime.DayOfWeek);  
  19.     int daydiff = (-1) * weeknow;  
  20.   
  21.     //本周第一天  
  22.     string FirstDay = datetime.AddDays(daydiff).ToString("yyyy-MM-dd");  
  23.     return Convert.ToDateTime(FirstDay);  
  24. }  
  25.   
  26. /// <summary>  
  27. /// 得到本周第一天(以星期一为第一天)  
  28. /// </summary>  
  29. /// <param name="datetime"></param>  
  30. /// <returns></returns>  
  31. public DateTime GetWeekFirstDayMon(DateTime datetime)  
  32. {  
  33.     //星期一为第一天  
  34.     int weeknow = Convert.ToInt32(datetime.DayOfWeek);  
  35.   
  36.     //因为是以星期一为第一天,所以要判断weeknow等于0时,要向前推6天。  
  37.     weeknow = (weeknow == 0 ? (7 - 1) : (weeknow - 1));  
  38.     int daydiff = (-1) * weeknow;  
  39.   
  40.     //本周第一天  
  41.     string FirstDay = datetime.AddDays(daydiff).ToString("yyyy-MM-dd");  
  42.     return Convert.ToDateTime(FirstDay);  
  43. }  
  44.   
  45. /// <summary>  
  46. /// 得到本周最后一天(以星期六为最后一天)  
  47. /// </summary>  
  48. /// <param name="datetime"></param>  
  49. /// <returns></returns>  
  50. public DateTime GetWeekLastDaySat(DateTime datetime)  
  51. {  
  52.     //星期六为最后一天  
  53.     int weeknow = Convert.ToInt32(datetime.DayOfWeek);  
  54.     int daydiff = (7 - weeknow) - 1;  
  55.   
  56.     //本周最后一天  
  57.     string LastDay = datetime.AddDays(daydiff).ToString("yyyy-MM-dd");  
  58.     return Convert.ToDateTime(LastDay);  
  59. }  
  60.   
  61. /// <summary>  
  62. /// 得到本周最后一天(以星期天为最后一天)  
  63. /// </summary>  
  64. /// <param name="datetime"></param>  
  65. /// <returns></returns>  
  66. public DateTime GetWeekLastDaySun(DateTime datetime)  
  67. {  
  68.     //星期天为最后一天  
  69.     int weeknow = Convert.ToInt32(datetime.DayOfWeek);  
  70.     weeknow = (weeknow == 0 ? 7 : weeknow);  
  71.     int daydiff = (7 - weeknow);  
  72.   
  73.     //本周最后一天  
  74.     string LastDay = datetime.AddDays(daydiff).ToString("yyyy-MM-dd");  
  75.     return Convert.ToDateTime(LastDay);  
  76. }  
  77. }  
  78. }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值