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

作者:蓝之风 时间:2023-11-11 20:53:45 

本文实例讲述了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#,年,月,周,日期
0
投稿

猜你喜欢

  • C#实现微信分账功能的完整步骤

    2022-10-24 17:43:46
  • Flutter实现矩形取色器的封装

    2023-06-19 04:08:47
  • Quarkus中RESTEasy Reactive集成合并master分支

    2023-06-07 14:20:45
  • Android传递Bitmap对象在两个Activity之间

    2023-09-01 22:30:17
  • Android用 Mob 实现发送短信验证码实例

    2021-10-17 03:53:16
  • JavaWeb项目部署到服务器详细步骤详解

    2023-11-29 11:15:20
  • Android编程中自定义dialog用法实例

    2023-05-10 07:21:37
  • C++中的String的常用函数用法

    2023-03-26 17:52:45
  • 使用java连接Redis,Maven管理操作

    2023-06-29 10:29:45
  • C#如何自动识别文件的编码

    2022-10-08 01:41:43
  • java中的基础运算符

    2022-06-23 04:19:38
  • 序列化版本号serialVersionUID的作用_动力节点Java学院整理

    2022-08-14 06:39:02
  • javaWeb项目部署到阿里云服务器步骤详解

    2023-11-07 05:21:36
  • Java实现医院管理系统

    2023-11-22 18:36:07
  • Maven配置文件pom.xml详解

    2022-07-03 02:26:43
  • Android实现固定屏幕显示的方法

    2023-05-23 18:29:07
  • Java中List使用stream流转成map的几种方式详解

    2022-07-31 21:46:12
  • android实现图片闪烁动画效果的两种实现方式(实用性高)

    2022-06-29 14:18:32
  • Android实现短信验证码获取自动填写功能(详细版)

    2022-07-22 07:08:10
  • C#实现的算24点游戏算法实例分析

    2021-12-01 04:13:21
  • asp之家 软件编程 m.aspxhome.com