C实现的根据日期得到今天是星期几
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算法如下:
基姆拉尔森计算公式: 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来代入公式计算。
但是在测试的时候发现有点出入,就是公式存在一点问题,得稍做修改:
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 +1
代码如下:
#region根据年月日计算星期几(Label2.Text=CaculateWeekDay(2004,12,9);) ///
///根据年月日计算星期几(Label2.Text=CaculateWeekDay(2004,12,9);)
///
///年
///月
///日
///
public static string CaculateWeekDay(int y,int m, int d)
{
if(m==1) m=13;
if(m==2) m=14;
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;
}
#endregion
在开发网站的过程中,如开发新闻网站、论坛、聊天室等,都需要获取当前系统日期,本实例介绍如何获取系统日期并将系统日期用不同的格式显示出来。实例运行结果如图7.1所示。
获取当前系统日期并将其转化为短日期格式的代码如下:
Label1.Text = System.DateTime.Now.ToShortDateString();
获取当前系统日期并将其转化为长日期格式的代码如下:
Label2.Text = System.DateTime.Now.ToLongDateString();
注意:DateTime对象中的Now属性可以用DateTime对象中的Today属性代替,DataTime.Now属性与DataTime.Today属性都是用来获取当前系统时间的。
在开发游戏类网站时,往往需要将玩家的闯关时间记录下来,设立排行榜,增强游戏的趣味性。本实例将会介绍如何获取当前系统时间并将其格式化。实例运行结果如图7.2所示。
获取当前系统时间并将其转化为短时间格式的代码如下:
Label1.Text = System.DateTime.Now.ToShortTimeString();
获取当前系统日期并将其转化为长日期格式的代码如下:
Label2.Text = System.DateTime.Now.ToLongTimeString();
一些网站的首页会将当前系统日期和时间都显示出来,以美化网站。本实例介绍如何同时获得系统当前日期和时间。实例运行结果如图7.3所示。
同时获得系统当前日期和时间的代码如下:
Label1.Text = DateTime.Now.ToString();
在本实例中,主要实现的是使用DateTime结构的DayofWeek属性来获取当前日期是星期几,并将返回指定日期是星期几的英文单词转化为相应的汉字。代码如下:
public static string dt;
public static string week;
protected void Button1_Click(object sender, EventArgs e)
{
//获取当前日期是星期几
dt = DateTime.Today.DayOfWeek.ToString();
//根据取得的英文单词返回汉字
switch (dt)
{
case "Monday":
week ="星期一";
break ;
case "Tuesday":
week = "星期二";
break;
case "Wednesday": week = "星期三";
break;
case "Thursday": week = "星期四";
break;
case "Friday":
week = "星期五";
break;
case "Saturday":
week = "星期六";
break;
case "Sunday":
week = "星期日";
break;