C#中实现根据年月日计算星期几的函数麻烦告诉我
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/05 22:01:23
C#中实现根据年月日计算星期几的函数麻烦告诉我
C#中实现根据年月日计算星期几的函数麻烦告诉我
C#中实现根据年月日计算星期几的函数麻烦告诉我
官方参考手册,权威技术手册下载
阿里西西电子图书教程分类
有时候,会想在ASP.NET中根据某个日期计算当天是星期几.下面的代码可以进行这种计算.
string CaculateWeekDay(int y,int m, int d){if(m==1) {m=13;y--;}
if(m==2) {m=14;y--;}
int week=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7+1;
string weekstr="";
switch(week){case 1: weekstr="星期一"; break;
case 2: weekstr="星期二"; break;
case 3: weekstr="星期三"; break;
case 4: weekstr="星期四"; break;
case 5: weekstr="星期五"; break;
case 6: weekstr="星期六"; break;
case 7: weekstr="星期日"; break;}return weekstr;}private void Button1_Click(object sender, System.EventArgs e){int year=int.Parse(TextBox1.Text);
int month=int.Parse(TextBox2.Text);
int day=int.Parse(TextBox3.Text);
Label1.Text=CaculateWeekDay(year,month,day);}代码很简单,不需要太多解释,一看就明白了.如果应用到现实中,最好对TextBox进行有效性检查,防止输入非法数据;或者将TextBox改成DropDownList.可能有人会问,C#里是否有相应的函数呢?当然有了.DayOfWeek就是返回星期几的函数.既然写到这里了,就给个示例代码吧.如下:
System.DateTime newDate=new DateTime(2005,1,11);
其它说明:计算星期几的算法还有蔡勒公式,还有一些在基姆拉尔森公式和蔡勒公式基础上改进的公式等等.