C#根据年月日计算星期几的函数
作者:草下飞 时间:2022-03-17 04:50:50
DateTime.Now.ToString("dddd",new System.Globalization.CultureInfo("zh-cn"));
今天在网上看见一些关于 C#实现的根据年月日计算星期几 的介绍:
算法如下:
基姆拉尔森计算公式
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7
在公式中d表示日期中的日数,m表示月份数,y表示年数。
注意:在公式中有个与其他公式不同的地方:
把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。
代码如下:
//y-年,m-月,d-日期
string CaculateWeekDay(int y,int m,int d)
{
string[] weekstr ={ "日", "一", "二", "三", "四", "五", "六" };
if (m < 3)
{
m += 12;
if (y % 400 == 0 || y % 100 != 0 && y % 4 == 0)
{
d--;
}
}
else
{
d += 1;
}
return "星期" + weekstr[(d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7];
}
标签:C#,年月日,计算,星期几
0
投稿
猜你喜欢
一文详解Reactor模型与实现示例
2023-11-13 12:22:09
Maven如何打入依赖中指定的部分jar包
2023-09-22 02:50:33
Java拦截器Interceptor和过滤器Filte的执行顺序和区别
2022-06-01 20:37:11
Java 使用poi把数据库中数据导入Excel的解决方法
2022-09-19 14:18:52
解析Spring Mvc Long类型精度丢失问题
2021-11-06 12:27:37
使用反射方式获取JPA Entity的属性和值
2023-07-24 17:43:22
轻量级声明式的Http库——Feign的独立使用
2022-06-05 04:36:19
Java 详解包装类Integer与int有哪些共通和不同
2022-06-15 20:12:18
web.xml SpringBoot打包可执行Jar运行SpringMVC加载流程
2023-11-24 07:40:52
详细聊聊SpringBoot中动态切换数据源的方法
2023-11-24 04:07:49
Java线程状态变换过程代码解析
2023-08-06 18:05:29
Spring Boot加密配置文件特殊内容的示例代码详解
2023-09-18 08:47:24
Java设计模式之装饰者模式详解
2021-08-16 03:00:17
Java多线程之Worker Thread模式
2021-06-11 12:11:51
java实现文件下载的两种方式
2023-11-11 06:37:14
SpringMVC MVC架构与Servlet使用详解
2023-10-10 15:25:02
Spark调优多线程并行处理任务实现方式
2023-08-21 15:43:53
java实现Dijkstra最短路径算法
2022-11-30 21:02:15
Java文件操作之按行读取文件和遍历目录的方法
2023-11-24 16:58:21
基于Java检查IPv6地址的合法性
2022-08-05 12:17:17