2011. 4. 19. 02:37

* 지속적으로 추가하고 있습니다. *
다른 값이 필요하면 요청 주세요.

 

 

1. 확인

에디터를 눌러 'dotnetfiddle.net'사이트로 가서 직접 날짜를 수정하여 사용해 보실 수 있습니다.

 

 

 

2. 코드

아래는 코드 입니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
 
Console.WriteLine("//0. 기준날짜");
DateTime dateToday = DateTime.Today;
Console.WriteLine("//결과 : " + dateToday.ToString());
Console.WriteLine("DateTime dateToday = DateTime.Today;");
 
Console.WriteLine(" ");
 
Console.WriteLine("//0-2. 오늘 요일");
Console.WriteLine("//결과 : " + dateToday.DayOfWeek.ToString());
Console.WriteLine("DateTime dateToday = DateTime.Today;");
 
Console.WriteLine(" ");
Console.WriteLine(" ");
 
Console.WriteLine("//1. 이번달 1일");
DateTime dtFirstDay = dateToday.AddDays(1 - dateToday.Day);
Console.WriteLine("//결과 : " + dtFirstDay.ToString());
Console.WriteLine("DateTime dtFirstDay = dateToday.AddDays(1 - dateToday.Day);");
 
Console.WriteLine(" ");
 
Console.WriteLine("//2. 요번달 마지막날짜");
DateTime dtMonthLastDay = dateToday.AddMonths(1).AddDays(-dateToday.Day);
Console.WriteLine("//결과 : " + dtMonthLastDay.ToString());
Console.WriteLine("DateTime dtMonthLastDay = dateToday.AddMonths(1).AddDays(dateToday.Day);");
 
Console.WriteLine(" ");
 
Console.WriteLine("//3. 요번주의 남은 날짜(오늘포함, 토요일까지만)");
int intWeekLeftDayCount = 7 - (int)(dtFirstDay.DayOfWeek);
Console.WriteLine("//결과 : " + intWeekLeftDayCount.ToString());
Console.WriteLine("int intWeekLeftDayCount = 7 - (int)(dtFirstDay.DayOfWeek);");
 
Console.WriteLine(" ");
 
Console.WriteLine("//4. 요번달의 첫 일요일(1일 기준이기 때문에 1일이 일요일이 아니면 전달 마지막 일요일이 표시됨.)");
DateTime dtMonthFirstSunday = dtFirstDay.AddDays(0 - (int)(dtFirstDay.DayOfWeek));
Console.WriteLine("//결과 : " + dtMonthFirstSunday.ToString());
Console.WriteLine("DateTime dtMonthFirstSunday = dtFirstDay.AddDays(0 - (int)(dtFirstDay.DayOfWeek));");
 
Console.WriteLine(" ");
 
Console.WriteLine("//5. 마지막 주의 일요일");
DateTime dtLastSunday = dtMonthLastDay.AddDays(0 - (int)(dtMonthLastDay.DayOfWeek));
Console.WriteLine("//결과 : " + dtLastSunday.ToString());
Console.WriteLine("DateTime dtLastSunday = dtMonthLastDay.AddDays(0 - (int)(dtMonthLastDay.DayOfWeek));");
 
Console.WriteLine(" ");
 
Console.WriteLine("//6. 마지막 주의 일수");
int intLastWeekDayCount = dtMonthLastDay.DayOfYear - dtLastSunday.DayOfYear + 1;
Console.WriteLine("//결과 : " + intLastWeekDayCount.ToString());
Console.WriteLine("int intLastWeekDayCount = dtMonthLastDay.DayOfYear - dtLastSunday.DayOfYear + 1;");
 
Console.WriteLine(" ");
 
Console.WriteLine("//7. 이번 달의 주수를 가져오는 방법");
int intMonthWeekCount = ((dtMonthLastDay.DayOfYear - dtMonthFirstSunday.AddDays(7).DayOfYear) / 7+ 2;
Console.WriteLine("//결과 : " + intMonthWeekCount.ToString());
Console.WriteLine("int intMonthWeekCount = ((dtMonthLastDay.DayOfYear - dtMonthFirstSunday.AddDays(7).DayOfYear) / 7) + 2;");
 
Console.WriteLine(" ");
 
Console.WriteLine("//8. 영어날짜");
string strNowEng = String.Format(new System.Globalization.CultureInfo("en-US"), "{0:dddddddddd} {0:MMMMMMMM} {0:d} {0:hh}:{0:mm}:{0:ss} {0:yyyy}", dateToday.ToUniversalTime());
Console.WriteLine("//결과 : " + strNowEng.ToString());
Console.WriteLine("string strNowEng = String.Format(new System.Globalization.CultureInfo(\"en-US\"), \"{0:dddddddddd} {0:MMMMMMMM} {0:d} {0:hh}:{0:mm}:{0:ss} {0:yyyy}\", dateToday.ToUniversalTime());");
 
Console.WriteLine(" ");
 
Console.WriteLine("//9. 요번주의 원하는 요일의 날짜 구하기(여기서는 금요일)");
DateTime fridayDate = dateToday.AddDays(Convert.ToInt32(DayOfWeek.Friday) - Convert.ToInt32(dateToday.DayOfWeek));
Console.WriteLine("//결과 : " + fridayDate.ToString());
Console.WriteLine("DateTime fridayDate = dateToday.AddDays(Convert.ToInt32(DayOfWeek.Friday) - Convert.ToInt32(dateToday.DayOfWeek));");
 
Console.WriteLine(" ");
 
Console.WriteLine("//9-2. 요번주의 일요일 날짜");
DateTime dateSunday = dateToday.AddDays(Convert.ToInt32(DayOfWeek.Sunday) - Convert.ToInt32(dateToday.DayOfWeek));
Console.WriteLine("//결과 : " + dateSunday.ToString());
Console.WriteLine("DateTime dateSunday = dateToday.AddDays(Convert.ToInt32(DayOfWeek.Sunday) - Convert.ToInt32(dateToday.DayOfWeek));");
 
Console.WriteLine(" ");
cs

 

 

수정 내역

- 2022.06.24

이번달 마지막 날짜 구하는 식의 오류 수정

필요없는 코드 제거

 

- 2014.01.08
: 3번 이번주 일요일 날짜 구하는 식 제거

: 11-1번에 이번주 일요일 날짜 구하는 식 추가

 

- 2014.01.08
: 1월달 주수 계산이 잘못 되던것 수정

 

마무리

업데이트 한지가 오래되었는데 여전히 별문제 없이 잘 돌아가는 거 같습니다.

실버라이트가 지원이 끊기면서 닷넷피들로 바꿔봤는데 아직 인터페이스 문제가 많네요 ㅡ,.ㅡ;;

핫 포스팅