نمایش تاریخ و زمان با فرمت دلخواه در سی شارپ
نمایش تاریخ و زمان رو به صورت دلخواه در سی شارپ به چه صورتی هست ؟ به عنوان مثال گاهی دیدم که به صورت زیر تاریخ و زمان رو نمایش میدن :
1399/05/02 15:25
و گاهی هم دیدم که به این صورت داره نمایش داده میشه :
1399/05/02 3:25 p.m
یا فرمت های دیگه ای که هست. لطفا راهنمایی بفرمایید نمایش تاریخ و زمان با فرمت دلخواه در سی شارپ چجوری انجام میشه ؟
پاسخ هوش مصنوعی
برای نمایش تاریخ و زمان با فرمت دلخواه در سی شارپ، می توانید از متد DateTime.ToString()
استفاده کنید. با استفاده از این متد می توانید فرمت مورد نظر خود را تعیین کنید. در زیر چند نمونه از کدهایی که می توانید برای فرمت های مختلف استفاده کنید آورده شده است:
1. برای نمایش تاریخ به فرمت YYYY/MM/DD HH:mm:
DateTime now = DateTime.Now;
string formattedDate = now.ToString("yyyy/MM/dd HH:mm");
Console.WriteLine(formattedDate);
2. برای نمایش تاریخ به گونه YYYY/MM/DD h:mm tt که نشان دهنده صبح یا عصر است:
DateTime now = DateTime.Now;
string formattedDate = now.ToString("yyyy/MM/dd h:mm tt");
Console.WriteLine(formattedDate);
3. برای فرمت های مختلف دیگر، شما می توانید به سادگی فرمت را تغییر دهید. لیست کامل فرمت های ممکن را می توانید در مستندات مایکروسافت پیدا کنید.
نمایش تاریخ و زمان با فرمت دلخواه در سی شارپ
نکته اول در مورد تاریخ و زمان این هست که شما همیشه سعی کنید فیلدهای تاریخ و زمان رو در دیتابیس یه صورت DateTime ذخیره کنید. چون در این صورت میتونید به راحتی برای نمایش به تاریخ شمسی تبدیل کنید و همچنین در جستجو ها ازش استفاده کنید. این سوال و پاسخش رو مطالعه کنید. (تبدیل تاریخ میلادی به شمسی و بالعکس در سی شارپ)
خب حالا در مورد نمایش تاریخ و زمان با فرمت دلخواه در سی شارپ توضیحاتی رو خدمتتون عرض می کنم. توی این لینک که مربوط به خود سایت مایکروسافت هست لیست کاملی از فرمت ها و نحوه استفاده از اونها ارائه شده.
چند مثال از نمایش تاریخ و زمان با فرمت دلخواه در سی شارپ
// create date time 2008-03-09 16:05:07.123
DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123);
String.Format("{0:y yy yyy yyyy}", dt); // "8 08 008 2008" year
String.Format("{0:M MM MMM MMMM}", dt); // "3 03 Mar March" month
String.Format("{0:d dd ddd dddd}", dt); // "9 09 Sun Sunday" day
String.Format("{0:h hh H HH}", dt); // "4 04 16 16" hour 12/24
String.Format("{0:m mm}", dt); // "5 05" minute
String.Format("{0:s ss}", dt); // "7 07" second
String.Format("{0:f ff fff ffff}", dt); // "1 12 123 1230" sec.fraction
String.Format("{0:F FF FFF FFFF}", dt); // "1 12 123 123" without zeroes
String.Format("{0:t tt}", dt); // "P PM" A.M. or P.M.
String.Format("{0:z zz zzz}", dt); // "-6 -06 -06:00" time zone
خب ببینید در مثال بالا لیست کاملی از دستورات نمایش داده شده. اما اگر بخوایم به صورت دقیق تر استفاده از این دستورات رو بگیم به این صورت هست :
//این دستورات با استفاده از کلاس تبدیل تاریخ میلادی به شمسی نوشته شده
ConvertDateTime.ConvertMiladiToShamsi(DateTime.Now,"yyyy/MM/dd");
//خروجی
//1399/06/25
ConvertDateTime.ConvertMiladiToShamsi(DateTime.Now,"yyyy/MM/dd hh:mm");
//خروجی
//1399/06/25 01:23
ConvertDateTime.ConvertMiladiToShamsi(DateTime.Now,"yyyy/MM/dd HH:mm");
//خروجی
//1399/06/25 13:23
//
String.Format("{0:"yyyy/MM/dd"}", "2020-5-23");
//خروجی
//2020/05/23
کاراکترهای مورد استفاده در فرمت بندی تاریخ و زمان
کاراکترهایی که در هنگام فرمت بندی تاریخ و زمان استفاده می شود به شرح زیر می باشد
t ShortTimePattern h:mm tt
d ShortDatePattern M/d/yyyy
T LongTimePattern h:mm:ss tt
D LongDatePattern dddd, MMMM dd, yyyy
f (combination of D and t) dddd, MMMM dd, yyyy h:mm tt
F FullDateTimePattern dddd, MMMM dd, yyyy h:mm:ss tt
g (combination of d and t) M/d/yyyy h:mm tt
G (combination of d and T) M/d/yyyy h:mm:ss tt
m, M MonthDayPattern MMMM dd
y, Y YearMonthPattern MMMM, yyyy
r, R RFC1123Pattern ddd, dd MMM yyyy HH':'mm':'ss 'GMT' (*)
s SortableDateTimePattern yyyy'-'MM'-'dd'T'HH':'mm':'ss (*)
u UniversalSortableDateTimePattern yyyy'-'MM'-'dd HH':'mm':'ss'Z' (*)
- آموزش استفاده از پلاگین گردونه شانس در Asp.net core به همراه سورس
- نمایش متن به صورت فرمت شده در CkEditor
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- مشکل تاریخ شمسی در سی شارپ
- نمایش گزارش stimulsoft روی کلاینت
- تفاوت های سی شارپ 8 با نسخه های قبلی چیه؟
- انتخاب چند سطر دلخواه توسط چک باکس در DataGrid و محاسبه جمع سطرهای انتخاب شده
- نمایش نوتیفکیشن در سی شارپ
- ارسال پارامتر از سی شارپ به استیمول سافت
- عدم نمایش عکس در دیتاگرید ویو در wpf
- Library Animation برای کنترلهای WPF
- مشکل در تغییر مقدار Text کنترل RibbonBar در کامپوننت DevExpress
- قرار دادن مقادیر ارسالی یک ستون از جدول به صورت سطری در استیمول