퇴근5분전


 제목 달기 어렵네.. 

    // 테스트용도.
     for (int day = 1; day <= 31; day++)
     {
         int wcnt1 = GetWeeksOfYear(new DateTime(2010, 10, day));
         int wcnt2 = GetWeeksOfMonth(new DateTime(2010, 10, day));
         textBox1.AppendText(string.Format("{0} : {1}주차 / {0} : {2}주차" + Environment.NewLine,
                                                              day, wcnt1,             wcnt2));

     }

     // 내가 만든 것.
     private static int GetWeekCnt(DateTime dt)
        {
            int week =  Enum.GetValues( typeof( DayOfWeek) ).Length;
            int dayOffset = (int)dt.AddDays(-(dt.Day - 1)).DayOfWeek;
            int weekCnt = (dt.Day + dayOffset) / week ;
            weekCnt += ((dt.Day + dayOffset) % week ) > 0 ? 1 : 0;
            return weekCnt;
        }

   // 훈스에 몬난아님이 검색하신걸 내가 수정한것.
   // 이건 해당 년도에 주차 수를 구한다.
        public int GetWeeksOfYear(DateTime date)
        {
            System.Globalization.CultureInfo cult_info = System.Globalization.CultureInfo.CreateSpecificCulture("ko");
            System.Globalization.Calendar cal = cult_info.Calendar;
            int weekNo = cal.GetWeekOfYear(date, cult_info.DateTimeFormat.CalendarWeekRule, cult_info.DateTimeFormat.FirstDayOfWeek);
            int week1day = cal.GetWeekOfYear(date.AddDays( -( date.Day+1 )), cult_info.DateTimeFormat.CalendarWeekRule, cult_info.DateTimeFormat.FirstDayOfWeek);
            return weekNo - week1day + 1;
        }

음...

'# 1) 프로그래밍' 카테고리의 다른 글

HWP 바이너리 파일...  (0) 2011.03.23
문자열 첫번째 검색 문자만 Replace  (0) 2010.09.30
DateTime관련..  (0) 2010.09.09
피벗 메서드  (0) 2010.08.26
새로운 프로젝트 & 6월에 나의 프로젝트!  (0) 2010.06.03