ibcadmin 发表于 2015-2-27 09:24:07

C#根据年月日算出是星期几

根据指定的日期,计算出指定日期是星期几。


/// <summary>
    /// 基姆拉尔森计算公式计算日期
    /// </summary>
    /// <param name="y">年</param>
    /// <param name="m">月</param>
    /// <param name="d">日</param>
    /// <returns>星期几</returns>
   
   protected string CaculateWeekDay(int y, int m, int d)
    {
      if (m == 1 || m == 2)
      {
            m += 12;
//把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。
            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;
    }





johnlin 发表于 2016-1-20 23:55:31

高人,学习

David1633 发表于 2016-1-28 14:45:21

能不能把原理告诉一下啊?计算公式 看不动
页: [1]
查看完整版本: C#根据年月日算出是星期几