C#获取每个年,月,周的起始日期和结束日期的方法
作者:蓝之风 发布时间:2023-11-11 20:53:45
标签: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#程序设计有所帮助。


猜你喜欢
- 本文实例为大家分享了Java实现登录和注册的具体代码,供大家参考,具体内容如下登录和注册案例的分析:我们在完成一个需求时,需要面向对象,我们
- 一、常用功能java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:public static <
- 由于毕业后工作没有对接到专业问题,导致四五年没有碰过Winform程序了。突然由于工作问题,为了方便自己,所以想自己写写小winform小软
- Dart实体类格式class CategoryMo { String name; int count;CategoryMo({this.na
- 首先说一下,教科书上的扫描线算法确实是用c++很好实现,而且网上有很多源码,而java实现的基本没有(可能是我没看到),所以肖先生还是打算自
- Java Function的使用一、方法介绍表示接受一个参数并产生结果的函数。参数类型 T - 函数输入的类型R - 函数的结果类型方法介绍
- 介绍跨域CORS,全称是"跨域资源共享"(Cross-origin resource sharing)当页面发出跨域请求
- 本文实例讲述了从C#程序中调用非受管DLLs的方法。分享给大家供大家参考。具体方法如下:前言:从所周知,.NET已经渐渐成为一种技术时尚,那
- 前言Snackbar和Toast相似,都是为了给用户提供交互信息,Snackbar是固定在底部的,显示时从下往上滑出要使用Snackbar,
- Java 中的运算符与 C 语言基本一致。1、算术运算符操作符描述例子+加法 : 相加运算符两侧的值A + B 等于 30-减法 : 左操作
- 在消息通知的时候,我们经常用到两个控件Notification和Toast。特
- 面试中可能会被问到为什么我们调用start()方法时会执行run()方法,为什么我们不能直接调用run()方法?Java 创建线程的方法实际
- 完成一个简单的基于MVC的数据查询模块,要求能够按照name进行模糊查询。Index.jsp:<%@ page import=&quo
- 范例说明Android的Widget,有许多是为了与User交互而特别设计的,但也有部分是作为程序提示、显示程序运行状态的Widget。现在
- 使用YZMHelper帮助类即可using System;using System.Web;using System.Drawing;usi
- 发现问题:问题如图所示,在eclipse中开启tomcat服务器时报错:端口已被占用。这是因为在tomcat开启的状态下,eclipse异常
- 在并发多线程的情况下,为了保证数据安全性,一般我们会对数据进行加锁,通常使用Synchronized或者ReentrantLock同步锁。S
- 按官方修改的示例:#MidServerClient.javaimport feign.Param;import org.springfram
- idea工具使用 Java Exception Breakpoint 添加异常断点,在IDE里,新建一个断点,类型是Java Excepti
- 导入依赖(pom.xml) <!--整合Shiro安全框架--> <dependency>