C#에서 DateTime은 통하여 연월일 및 시간 등을 구하는 클래스입니다. 이번에는 DateTime을 이용하여 특정 날짜에 대한 요일을 구해보는 방법에 대하여 알아보도록 하겠습니다. 특정 요일 또는 주말 등을 지정하여 구하는 방식에서 많이 사용합니다.
C# DateTime 특정 날짜의 요일 구하기
1. DateTime을 이용한 요일 구하기
- 특정 날짜의 요일을 구하는 방법에서 사용되는 열거형 enum 인 DayOfWeek를 사용합니다.
- DayOfWeek의 값은 이미 C#에서 각각의 요일이 숫자 형식으로 정의되어 있어서 사용하기에 매우 편리합니다.
- 일요일(Sunday)의 값은 0이며, 0부터 6까지 순서대로 증가하며 토요일(Saturday)의 값은 6입니다.
2. 특정 날짜의 요일을 구하는 예제
날짜를 요일로 변환하는 함수 생성
// ● 날짜를 요일로 변환하는 함수
private string CheckDayOfWeek(string strDay)
{
// return string
string strRet = "";
// 날짜 DateTime으로 변환
DateTime dt = Convert.ToDateTime(strDay);
// 요일 불러오기
int nWeek = (int)dt.DayOfWeek;
// 요일 한글로 변환
// ( 0 = 일요일 ~ 6 = 토요일)
switch(nWeek)
{
case 0:
strRet = "일";
break;
case 1:
strRet = "월";
break;
case 2:
strRet = "화";
break;
case 3:
strRet = "수";
break;
case 4:
strRet = "목";
break;
case 5:
strRet = "금";
break;
case 6:
strRet = "토";
break;
default:
break;
}
return strRet;
}
CheckDayOfWeek 함수를 호출하여 요일 받기
// ● CheckDayOfWeek를 호출하여 요일 받기
private void SetDayOfWeek()
{
string day = "2023-11-11";
Console.WriteLine(string.Format("{0}({1})", day, CheckDayOfWeek(day)));
day = "2023-11-15";
Console.WriteLine(string.Format("{0}({1})", day, CheckDayOfWeek(day)));
day = "2023-11-20";
Console.WriteLine(string.Format("{0}({1})", day, CheckDayOfWeek(day)));
day = "2023-11-26";
Console.WriteLine(string.Format("{0}({1})", day, CheckDayOfWeek(day)));
}
결과
입력 날짜 | 출력값 |
2023-11-11 | 2023-11-11(토) |
2023-11-15 | 2023-11-15(수) |
2023-11-20 | 2023-11-20(월) |
2023-11-26 | 2023-11-26(일) |
이상으로 C#에서 DateTime의 속성인 DayOfWeek를 사용하여 특정 날짜의 요일을 구하는 방법에 대하여 알아보았습니다. DateTime의 쓰임새가 너무 많은 만큼 더욱 많은 자료를 다룰 수 있도록 노력하겠습니다. 감사합니다.
C# 유용한 자료
'C# > WPF' 카테고리의 다른 글
[WPF/C#] 다른 응용 프로그램 또는 파일 실행 방법 및 예제 (0) | 2024.01.05 |
---|---|
[WPF/C#] Visual Studio 자주 사용하는 단축키 모음 (0) | 2023.12.07 |
[C#/WPF] 문자열이 숫자인지 판단(Regex.IsMatch, Int32.TryParse) (0) | 2023.11.13 |
[C#/WPF] Window(윈도우) 현재창 닫기(Close) (0) | 2023.08.17 |
[C#/WPF] ComboBox(콤보박스) 생성 및 사용 방법 (0) | 2023.08.09 |
댓글