根据年月来判断月里天数

根据月份算这个月的天数。

C# code
    DateTime d = new DateTime(2008,8,8);
    System.Globalization.Calendar c = new System.Globalization.GregorianCalendar();
    int daysInAugust = c.GetDaysInMonth(d.Year, d.Month);  // 31




法定节假日
that is a bit difficult, you might:

C# code
    DateTime[] m_Holidays = new DateTime[]
    {
        new DateTime(2008,  1,  1),
        new DateTime(2008,  5,  1),
        new DateTime(2008, 12, 25),
        //...
    };
    bool IsHoliday(DateTime d)
    {
        return Array.IndexOf<DateTime>(m_Holidays, d) >= 0;

        // or, 
        foreach (DateTime h in m_Holidays)
        {
            if (h.Month == d.Month && h.Day == d.Day) return true;
        }
        return false;
    }


手写的话
public int GetDays(int year, int month)
  {
  int[] days = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
  if (month == 2 && ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0))
  {
  return 29;
  }
  else
  {
  return days[month];
  }
  }

你可能感兴趣的:(判断)