"

بدست آوردن نام روز در سی‌شارپ ,کلاس DateTime در سی‌شارپ,مزایای استفاده از DayOfWeek در سی شارپ

بدست آوردن نام روز در سی‌شارپ

بدست آوردن نام روز در سی‌شارپ با استفاده از DateTime و DayOfWeek انجام می‌شود و در مدیریت تاریخ کاربرد زیادی دارد.

تیم تحریریه
7
0
14 تیر 1405
لینک کوتاه

بدست آوردن نام روز در سی‌شارپ

بدست آوردن نام روز در سی‌شارپ یکی از قابلیت‌های کاربردی کلاس DateTime است که به برنامه‌نویسان امکان می‌دهد روز هفته مربوط به یک تاریخ مشخص را استخراج و نمایش دهند.
این ویژگی در بسیاری از نرم‌افزارها مانند سیستم‌های حضور و غیاب، سامانه‌های رزرو آنلاین، تقویم‌ها و برنامه‌های زمان‌بندی مورد استفاده قرار می‌گیرد.
با استفاده از خصوصیت DayOfWeek، متد ToString("dddd") و کلاس CultureInfo می‌توان نام روز را به زبان‌های مختلف از جمله فارسی و انگلیسی نمایش داد و بر اساس آن تصمیم‌گیری‌های مختلفی در برنامه انجام داد.



بدست آوردن نام روز در سی‌شارپ


کلاس DateTime در سی‌شارپ

کلاس DateTime در فضای نام System قرار دارد و برای ذخیره و مدیریت تاریخ و زمان استفاده می‌شود.

نمونه تعریف تاریخ:

 

DateTime today = DateTime.Now;

 

یا:

 

DateTime date =

new DateTime(2026, 6, 29);

 

اکنون می‌توان اطلاعات مختلفی مانند سال، ماه، روز و نام روز هفته را از این شیء استخراج کرد.

 

دریافت روز هفته با DayOfWeek

ساده‌ترین روش برای بدست آوردن روز هفته استفاده از ویژگی DayOfWeek است.

 

DateTime today = DateTime.Now;

Console.WriteLine(today.DayOfWeek);

 

خروجی:

 

Monday

 

ویژگی DayOfWeek مقدار را به صورت عضو Enum برمی‌گرداند.




آیا به دنبال یک فرصت عالی برای یادگیری برنامه‌نویسی هستید؟ 🚀

با دوره آموزشی سی‌شارپ ما، شما می‌توانید مهارت‌های خود را به سطح جدیدی ارتقا دهید! این دوره به‌طور کامل طراحی شده تا به شما کمک کند تا از مبتدی تا پیشرفته در دنیای برنامه‌نویسی سی‌شارپ پیش بروید.

👨‍🏫 چرا دوره ما را انتخاب کنید؟

  • محتوای جامع و عملی: با پروژه‌های واقعی و تمرینات عملی، یادگیری را به تجربه‌ای جذاب تبدیل کنید.
  • مدرس مجرب: از تجربه و دانش مدرس حرفه‌ای بهره‌مند شوید که شما را در هر مرحله از یادگیری راهنمایی می‌کنند.
  • پشتیبانی ۲۴/۷: هر زمان که سوالی داشتید، ما در کنار شما خواهیم بود تا به شما کمک کنیم.
  • دسترسی مادامالعمر: به محتوای دوره دسترسی دائمی داشته باشید و هر زمان که خواستید، می‌توانید به آن مراجعه کنید.

💡 فرصت را از دست ندهید!

بایادگیری سی‌شارپ، می‌توانید در دنیای فناوری اطلاعات به یک متخصص تبدیل شوید و در پروژه‌های جذاب و چالش‌برانگیز شرکت کنید.

همین امروز به جمع یادگیرندگان ما بپیوندید و اولین قدم را به سوی آینده‌ای روشن‌تر بردارید!

شرکت در دوره آموزش برنامه نویسی سی شارپ






مقادیر Enum DayOfWeek

مقادیر موجود در این Enum عبارتند از:

مقدار  روز
Sunday  یکشنبه
Monday  دوشنبه
Tuesday  سه‌شنبه
Wednesday  چهارشنبه
Thursday  پنجشنبه
Friday  جمعه
Saturday  شنبه



مثال روی یک تاریخ مشخص

 

DateTime date =

new DateTime(2026, 7, 1);
 
Console.WriteLine(date.DayOfWeek);

خروجی:

Wednesday

 

تبدیل نام روز به فارسی  در سی شارپ

ویژگی DayOfWeek به صورت پیش‌فرض نام روز را به زبان انگلیسی برمی‌گرداند.

برای نمایش فارسی می‌توان از دستور switch استفاده کرد.

 

DateTime date = DateTime.Now;




switch(date.DayOfWeek)

{

case DayOfWeek.Saturday:

Console.WriteLine("شنبه");

break;




case DayOfWeek.Sunday:

Console.WriteLine("یکشنبه");

break;




case DayOfWeek.Monday:

Console.WriteLine("دوشنبه");

break;




case DayOfWeek.Tuesday:

Console.WriteLine("سه شنبه");

break;




case DayOfWeek.Wednesday:

Console.WriteLine("چهارشنبه");

break;




case DayOfWeek.Thursday:

Console.WriteLine("پنجشنبه");

break;




case DayOfWeek.Friday:

Console.WriteLine("جمعه");

break;

}



استفاده از Dictionary در سی شارپ

روش حرفه‌ای‌تر استفاده از Dictionary است.

 

Dictionary<DayOfWeek,string>

days =

new Dictionary<DayOfWeek,string>()

{

{DayOfWeek.Saturday,"شنبه"},

{DayOfWeek.Sunday,"یکشنبه"},

{DayOfWeek.Monday,"دوشنبه"},

{DayOfWeek.Tuesday,"سه شنبه"},

{DayOfWeek.Wednesday,"چهارشنبه"},

{DayOfWeek.Thursday,"پنجشنبه"},

{DayOfWeek.Friday,"جمعه"}

};




Console.WriteLine(

days[DateTime.Now.DayOfWeek]);



استفاده از CultureInfo در سی شارپ

یکی از بهترین روش‌ها برای نمایش نام روز، استفاده از کلاس CultureInfo است.

ابتدا فضای نام زیر را اضافه کنید:

 

using System.Globalization;

 

سپس:

 

DateTime today =

DateTime.Now;




CultureInfo culture =

new CultureInfo("en-US");




string dayName =

culture.DateTimeFormat

.GetDayName(today.DayOfWeek);




Console.WriteLine(dayName);

 

خروجی:

Monday

 

دریافت نام روز فارسی

CultureInfo culture =

new CultureInfo("fa-IR");




string dayName =

culture.DateTimeFormat

.GetDayName(DateTime.Now.DayOfWeek);




Console.WriteLine(dayName);

 

خروجی:

دوشنبه

 

استفاده از ToString

متد ToString نیز امکان نمایش نام روز را فراهم می‌کند.


DateTime today =

DateTime.Now;

 
Console.WriteLine(

today.ToString("dddd"));

 

 

خروجی:

Monday

 

نمایش نام کوتاه روز

Console.WriteLine(

DateTime.Now.ToString("ddd"));

 

خروجی:

Mon

 

نمایش نام فارسی با ToString

 

CultureInfo culture =

new CultureInfo("fa-IR");




Console.WriteLine(

DateTime.Now.ToString(

"dddd",

culture));

خروجی:

دوشنبه

 

مثال کاربردی: تشخیص تعطیلی

فرض کنید بخواهیم بررسی کنیم امروز جمعه است یا خیر.

if(DateTime.Now.DayOfWeek

== DayOfWeek.Friday)

{

Console.WriteLine(

"امروز تعطیل است");

}

else

{

Console.WriteLine(

"روز کاری است");

}

 

مثال کاربردی: نمایش پیام بر اساس روز هفته

switch(DateTime.Now.DayOfWeek)

{

case DayOfWeek.Saturday:

Console.WriteLine("شروع هفته");

break;




case DayOfWeek.Friday:

Console.WriteLine("آخر هفته");

break;




default:

Console.WriteLine("روز کاری");

break;

}



مثال کاربردی: سیستم حضور و غیاب

DateTime currentDate =

DateTime.Now;




string day =

currentDate.ToString("dddd");




Console.WriteLine(

$"امروز {day} است");



استخراج نام روز از تاریخ ورودی کاربر

Console.WriteLine(

"تاریخ را وارد کنید:");




string input =

Console.ReadLine();




DateTime date =

DateTime.Parse(input);




Console.WriteLine(

date.DayOfWeek);


 
استفاده از TryParse در سی شارپ

روش ایمن‌تر:

string input =

Console.ReadLine();




DateTime date;




if(DateTime.TryParse(

input,

out date))

{

Console.WriteLine(

date.DayOfWeek);

}

else

{

Console.WriteLine(

"تاریخ نامعتبر است");

}




نمایش روزهای هفته در حلقه

foreach(DayOfWeek day

in Enum.GetValues(

typeof(DayOfWeek)))

{

Console.WriteLine(day);

}

خروجی:

 

Sunday

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday



نمایش روزهای هفته به فارسی


CultureInfo culture =

new CultureInfo("fa-IR");




foreach(DayOfWeek day

in Enum.GetValues(

typeof(DayOfWeek)))

{

Console.WriteLine(

culture.DateTimeFormat

.GetDayName(day));

}



بدست آوردن شماره روز هفته

گاهی به جای نام روز به شماره آن نیاز داریم.

int dayNumber =

(int)DateTime.Now.DayOfWeek;




Console.WriteLine(dayNumber);

 

خروجی:

 

1

 

مقادیر:

عدد  روز
0 Sunday
1 Monday
2 Tuesday
3  Wednesday
4 Thursday
5 Friday
6 Saturday

 

مثال پروژه‌ای: رزرو نوبت

فرض کنید کاربران فقط در روزهای کاری امکان رزرو داشته باشند.

 

DateTime selectedDate =

DateTime.Now;




if(selectedDate.DayOfWeek

== DayOfWeek.Friday)

{

Console.WriteLine(
"رزرو در روز جمعه امکان‌پذیر نیست");

}

else

{

Console.WriteLine(

"رزرو انجام شد");

}

 

مثال پروژه‌ای: ارسال گزارش هفتگی

if(DateTime.Now.DayOfWeek

== DayOfWeek.Thursday)

{

Console.WriteLine(

"گزارش هفتگی ارسال شود");

}



مزایای استفاده از DayOfWeek در سی شارپ

  • سادگی

    تنها با یک دستور می‌توان روز هفته را بدست آورد.
  • سرعت بالا

    نیازی به محاسبات پیچیده ندارد.
  • سازگاری کامل با DateTime

    مستقیماً با کلاس DateTime کار می‌کند.
  • پشتیبانی از فرهنگ‌های مختلف

    با CultureInfo می‌توان نام روز را به زبان‌های مختلف نمایش داد.




مزایای استفاده از DayOfWeek در سی شارپ



نکات مهم 
DayOfWeek در سی‌شارپ

  • DayOfWeek یک Enum است

    بنابراین می‌توان مستقیماً آن را در شرط‌ها استفاده کرد.

 

if(date.DayOfWeek ==

DayOfWeek.Saturday)

{

}
  • برای نمایش فارسی از CultureInfo استفاده کنید

new CultureInfo("fa-IR")
  • برای نمایش کامل روز از dddd استفاده کنید

DateTime.Now.ToString("dddd")
  • برای نمایش کوتاه روز از ddd استفاده کنید

DateTime.Now.ToString("ddd")




نکات مهم  DayOfWeek در سی‌شارپ
جمع‌بندی

بدست آوردن نام روز در سی‌شارپ با استفاده از کلاس DateTime بسیار ساده و کاربردی است.
ویژگی DayOfWeek امکان تشخیص روز هفته را فراهم می‌کند و با استفاده از CultureInfo یا متد ToString("dddd") می‌توان نام روز را به زبان‌های مختلف از جمله فارسی نمایش داد.
این قابلیت در پروژه‌های مختلف مانند سیستم‌های حضور و غیاب، رزرو آنلاین، گزارش‌گیری، برنامه‌های مالی و سامانه‌های مدیریتی کاربرد فراوانی دارد.
تسلط بر کار با تاریخ و روزهای هفته یکی از مهارت‌های مهم برای هر برنامه‌نویس سی‌شارپ محسوب می‌شود.

محصولات مرتبط

کاربران ما

شما هم نظرتون با ما دریاره “بدست آوردن نام روز در سی‌شارپ” اشتراک بزارید

برای ارسال نظر لطفا ورود یا ثبت نام کنید

منو