根据年月日算日期

        Y=年,m=月,d=等于日

 

        public int CaculateWeekDay(int y, int m, int d)
        {
            if (m < 3)
            {
                m += 12;
                if (y % 400 == 0 || y % 100 != 0 && y % 4 == 0)
                {
                    d--;
                }
            }
            else
            {
                d += 1;
            }
            int week = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7;
            int weekNum = 0;
            switch (week)
            {
                case 1: weekNum = 1;
                    break;
                case 2: weekNum = 2;
                    break;
                case 3: weekNum = 3;
                    break;
                case 4: weekNum = 4;
                    break;
                case 5: weekNum = 5;
                    break;
                case 6: weekNum = 6;
                    break;
                case 7: weekNum = 7;
                    break;
            }
            return weekNum;
        }

posted @ 2009-06-15 17:31  适渊  阅读(169)  评论(0编辑  收藏  举报