C#获取每个年,月,周的起始日期和结束日期的方法

 更新时间:2017年02月23日 11:03:20   作者:蓝之风  
这篇文章主要介绍了C#获取每个年,月,周的起始日期和结束日期的方法,涉及C#时间与日期基本操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#获取每个年,月,周的起始日期和结束日期的方法。分享给大家供大家参考,具体如下:

我们在写程序的时候往往要计算出年,月,周的开始日期和结束日期,在这里给出统一求解方法

/// <summary>
/// 声明期间类型枚举
/// </summary>
public enum Period {Day, Week, Month, Year};
/// <summary>
/// 获取指定期间的起止日期
/// </summary>
/// <param name="period">期间类型</param>
/// <param name="beginDate">开始日期</param>
/// <param name="endDate">结束日期</param>
public static void GetPeriod(Period period, out DateTime beginDate, out DateTime endDate)
{
  int year = DateTime.Today.Year;
  int month = DateTime.Today.Month;
  switch (period)
  {
    case Period.Year: //年
      beginDate = new DateTime(year, 1, 1);
      endDate = new DateTime(year, 12, 31);
      break;
    case Period.Month: //月
      beginDate = new DateTime(year, month, 1);
      endDate = beginDate.AddMonths(1).AddDays(-1);
      break;
    case Period.Week: //周
      int week = (int)DateTime.Today.DayOfWeek;
      if (week == 0) week = 7; //周日
      beginDate = DateTime.Today.AddDays(-(week - 1));
      endDate = beginDate.AddDays(6);
      break;
    default: //日
      beginDate = DateTime.Today;
      endDate = DateTime.Today;
      break;
  }
}

PS:这里再为大家推荐几款日期与时间相关工具供大家参考使用:

在日期天数差计算器:
http://tools.jb51.net/jisuanqi/onlinedatejsq

在线日期计算器/相差天数计算器:
http://tools.jb51.net/jisuanqi/datecalc

在线日期/天数计算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi

在线阴历/阳历转换工具:
http://tools.jb51.net/bianmin/yinli2yangli

在线天数计算器(flash版):
http://tools.jb51.net/jisuanqi/datejsq

更多关于C#相关内容感兴趣的读者可查看本站专题:《C#日期与时间操作技巧总结》、《C#字符串操作技巧总结》、《C#数组操作技巧总结》、《C#中XML文件操作技巧汇总》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》及《C#面向对象程序设计入门教程

希望本文所述对大家C#程序设计有所帮助。

相关文章

  • C#匿名函数和匿名方法的使用

    C#匿名函数和匿名方法的使用

    本文主要介绍了C#匿名函数和匿名方法的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • C#操作session的类实例

    C#操作session的类实例

    这篇文章主要介绍了C#操作session的类,实例分析了C#针对session的添加、读取及删除等技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • C#判断指定分区是否是ntfs格式的方法

    C#判断指定分区是否是ntfs格式的方法

    这篇文章主要介绍了C#判断指定分区是否是ntfs格式的方法,涉及C#中DriveFormat属性的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • 深入理解C#窗体关闭事件

    深入理解C#窗体关闭事件

    很多初学者都想把默认的C#关闭按钮事件弄明白,本文就介绍一下C#窗体关闭事件,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 深入理解C♯ 7.0中的Tuple特性

    深入理解C♯ 7.0中的Tuple特性

    这篇文章主要介绍了C#7中Tuple特性的相关资料,文中通过示例代码介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友可以们下面来一起学习学习吧。
    2017-03-03
  • C#访问命令行的两种方法

    C#访问命令行的两种方法

    这篇文章主要介绍了C#访问命令行的两种方法,实例分析了C#操作命令行的两种常用技巧,需要的朋友可以参考下
    2015-06-06
  • VB.NET中Caching的使用方法

    VB.NET中Caching的使用方法

    Caching缓存,就是将一些生成代价比较大的常用数据,保存起来重用。一般数据都保存在内存中,因为从内存中读取数据比从数据库等其他地方要快。
    2013-04-04
  • C#使用OpenCvSharp实现图像校正

    C#使用OpenCvSharp实现图像校正

    这篇文章主要为大家详细介绍了C#如何使用OpenCvSharp实现图像校正功能,文中的示例代码简洁易懂,具有一定的学习价值,需要的小伙伴可以参考下
    2023-11-11
  • C#实现判断一个时间点是否位于给定时间区间的方法

    C#实现判断一个时间点是否位于给定时间区间的方法

    这篇文章主要介绍了C#实现判断一个时间点是否位于给定时间区间的方法,涉及C#针对时间的转换与判定相关技巧,需要的朋友可以参考下
    2015-08-08
  • C#使用Socket实现心跳的方法示例

    C#使用Socket实现心跳的方法示例

    这篇文章主要介绍了C#使用Socket实现心跳的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02

最新评论