ASP.NET

C#에서 선택한 날짜의 요일을 구하는 방법

allenspace 2025. 10. 30. 11:34

기본 방법

csharp
DateTime selectedDate = new DateTime(2025, 10, 30);

// 영어 요일명
DayOfWeek dayOfWeek = selectedDate.DayOfWeek;
Console.WriteLine(dayOfWeek); // Thursday

// 요일을 숫자로 (일요일=0, 월요일=1, ... 토요일=6)
int dayNumber = (int)selectedDate.DayOfWeek;
Console.WriteLine(dayNumber); // 4

 

한글 요일명으로 변환

csharp

DateTime selectedDate = DateTime.Now;

// 방법 1: switch 문 사용
string GetKoreanDayOfWeek(DayOfWeek day)
{
    switch (day)
    {
        case DayOfWeek.Sunday: return "일요일";
        case DayOfWeek.Monday: return "월요일";
        case DayOfWeek.Tuesday: return "화요일";
        case DayOfWeek.Wednesday: return "수요일";
        case DayOfWeek.Thursday: return "목요일";
        case DayOfWeek.Friday: return "금요일";
        case DayOfWeek.Saturday: return "토요일";
        default: return "";
    }
}

string koreanDay = GetKoreanDayOfWeek(selectedDate.DayOfWeek);
Console.WriteLine(koreanDay); // 목요일

 

배열을 이용한 방법

csharp
DateTime selectedDate = DateTime.Now;

string[] days = { "일요일", "월요일", "화요일", "수요일", "목요일", "금요일", "토요일" };
string koreanDay = days[(int)selectedDate.DayOfWeek];
Console.WriteLine(koreanDay); // 목요일

 

문화권 정보 활용

csharp
using System.Globalization;

DateTime selectedDate = DateTime.Now;

// 한국 문화권 설정
CultureInfo korean = new CultureInfo("ko-KR");
string dayName = selectedDate.ToString("dddd", korean);
Console.WriteLine(dayName); // 목요일

// 짧은 형식
string shortDayName = selectedDate.ToString("ddd", korean);
Console.WriteLine(shortDayName); // 목

 

💡 실용적인 예제 (ASP.NET에서 활용)

csharp
// 날짜 문자열에서 요일 구하기
string dateString = "2025-10-30";
DateTime date = DateTime.Parse(dateString);

string[] days = { "일", "월", "화", "수", "목", "금", "토" };
string dayOfWeek = days[(int)date.DayOfWeek];

// 결과: "2025-10-30 (목)"
string result = $"{dateString} ({dayOfWeek})";