本示例采用基姆拉爾森計(jì)算公式來(lái)根據(jù)日期計(jì)算未來(lái)日子是星期幾:
首先看下百度百科的基姆拉爾森計(jì)算公式定義:
基姆拉爾森計(jì)算公式
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7
在公式中d表示日期中的日數(shù),m表示月份數(shù),y表示年數(shù)。
注意:在公式中有個(gè)與其他公式不同的地方:
把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10則換算成:2003-13-10來(lái)代入公式計(jì)算。
1、客戶端(采用ajax方式調(diào)用):
1
2
3
|
$. get ( 'CaculateWeekDay' , { y: 2016, m: 8, d: 9 }, function (result) { alert(result); }) |
2、服務(wù)端:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
/// <summary> /// 計(jì)算具體某個(gè)日期是星期幾 /// </summary> /// <param name="y">年</param> /// <param name="m">月</param> /// <param name="d">日</param> /// <returns></returns> public string CaculateWeekDay( int y, int m, int d) { if (m == 1 || m == 2) { m += 12; y--; } int week = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7; string weekstr = "" ; switch (week) { case 0: weekstr = "星期一" ; break ; case 1: weekstr = "星期二" ; break ; case 2: weekstr = "星期三" ; break ; case 3: weekstr = "星期四" ; break ; case 4: weekstr = "星期五" ; break ; case 5: weekstr = "星期六" ; break ; case 6: weekstr = "星期七" ; break ; } return weekstr; } |
以上所述是小編給大家介紹的C#根據(jù)日期計(jì)算星期幾的實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)服務(wù)器之家網(wǎng)站的支持!
原文鏈接:http://www.cnblogs.com/liushenghuan/archive/2016/08/09/5753522.html