Example #1
0
        public static DateTime WeekFirstDay(int wn, int year)
        {
            int adjust = 0;

            GregorianCalendar cal    = new GregorianCalendar();
            DateTime          jan1st = new DateTime(year, 1, 1);

            if (jan1st.DayOfWeek == DayOfWeek.Monday ||
                jan1st.DayOfWeek == DayOfWeek.Tuesday ||
                jan1st.DayOfWeek == DayOfWeek.Wednesday ||
                jan1st.DayOfWeek == DayOfWeek.Thursday)
            {
                adjust = 1;
            }
            else
            {
                adjust = 0;
            }
            DateTime date = cal.AddWeeks(jan1st, wn - adjust);

            while (date.DayOfWeek != DayOfWeek.Monday)
            {
                date = date.AddDays(-1);
            }
            return(date);
        }
        public static DateTime GetLastDayInWeek(int Year, int Week)
        {
            GregorianCalendar Calendar = new GregorianCalendar(GregorianCalendarTypes.USEnglish);

            DateTime FirstDay   = new DateTime(Year, 1, 1);
            DateTime CurrentDay = Calendar.AddWeeks(FirstDay, Week);

            return(Calendar.AddDays(CurrentDay, 7 - (int)Calendar.GetDayOfWeek(CurrentDay) + 1));
        }
        static void Main(string[] args)
        {
            Calendar my     = new GregorianCalendar();
            DateTime myTime = new DateTime(2003, 11, 3, 8, 42, 40, 100, my);

            Console.WriteLine("Current Time: {0}", myTime.ToUniversalTime());
            myTime = my.AddWeeks(myTime, 12);
            Console.WriteLine("After add 12 weeks, the timer is:{0}", myTime.ToLocalTime());
            Console.WriteLine("This yeaar is Leap Year?" + my.IsLeapYear(2003, 0));
        }
Example #4
0
        private long GetNextPoint(ref DateTime t, int unit, int unitSteps)
        {
            switch (unit)
            {
            case 0:
                t = gc.AddSeconds(t, unitSteps);
                break;

            case 1:
                t = gc.AddMinutes(t, unitSteps);
                break;

            case 2:
                t = gc.AddHours(t, unitSteps);
                break;

            case 3:
                t = gc.AddDays(t, unitSteps);
                break;

            case 4:
                t = gc.AddWeeks(t, unitSteps);
                break;

            case 5:
                t = gc.AddMonths(t, unitSteps);
                break;

            case 6:
                t = gc.AddYears(t, unitSteps);
                break;

            default:
                break;
            }

            return(Util.TicksToMillis(t.Ticks));
        }