نمایش تاریخ و زمان رو به صورت دلخواه در سی شارپ به چه صورتی هست ؟ به عنوان مثال گاهی دیدم که به صورت زیر تاریخ و زمان رو نمایش میدن :
1399/05/02 15:25
و گاهی هم دیدم که به این صورت داره نمایش داده میشه :
1399/05/02 3:25 p.m
یا فرمت های دیگه ای که هست. لطفا راهنمایی بفرمایید نمایش تاریخ و زمان با فرمت دلخواه در سی شارپ چجوری انجام میشه ؟
نکته اول در مورد تاریخ و زمان این هست که شما همیشه سعی کنید فیلدهای تاریخ و زمان رو در دیتابیس یه صورت 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' (*)
تاریخ :
1399/11/25
- ساعت :
11:22:00 AM
- بازدید :
3906
- پاسخ :
2
|
تاریخ :
1403/12/02
- ساعت :
12:09:00 AM
- بازدید :
280
- پاسخ :
1
|
تاریخ :
1398/07/08
- ساعت :
12:21:00 AM
- بازدید :
3058
- پاسخ :
2
|
تاریخ :
1403/11/23
- ساعت :
08:24:00 PM
- بازدید :
195
- پاسخ :
2
|
تاریخ :
1399/11/10
- ساعت :
10:01:00 PM
- بازدید :
7180
- پاسخ :
4
|
تاریخ :
1399/04/09
- ساعت :
08:51:00 PM
- بازدید :
3104
- پاسخ :
1
|
تاریخ :
1399/03/25
- ساعت :
08:58:00 PM
- بازدید :
3839
- پاسخ :
1
|
تاریخ :
1400/12/18
- ساعت :
10:24:00 AM
- بازدید :
2120
- پاسخ :
1
|
تاریخ :
1401/01/26
- ساعت :
12:14:00 PM
- بازدید :
3009
- پاسخ :
1
|
تاریخ :
1403/10/20
- ساعت :
11:39:00 AM
- بازدید :
276
- پاسخ :
1
|
تاریخ :
1404/01/16
- ساعت :
07:20:00 PM
- بازدید :
19
- پاسخ :
0
|
تاریخ :
1404/01/07
- ساعت :
05:02:00 AM
- بازدید :
102
- پاسخ :
1
|
تاریخ :
1402/04/28
- ساعت :
09:04:00 PM
- بازدید :
1321
- پاسخ :
0
|
تاریخ :
1403/12/30
- ساعت :
06:43:00 PM
- بازدید :
72
- پاسخ :
1
|
تاریخ :
1398/08/23
- ساعت :
09:16:00 PM
- بازدید :
9862
- پاسخ :
1
|
تاریخ :
1404/01/03
- ساعت :
12:18:00 PM
- بازدید :
42
- پاسخ :
1
|
تاریخ :
1404/01/03
- ساعت :
10:39:00 AM
- بازدید :
49
- پاسخ :
1
|
تاریخ :
1404/01/02
- ساعت :
05:05:00 PM
- بازدید :
63
- پاسخ :
1
|
تاریخ :
1403/12/30
- ساعت :
06:52:00 PM
- بازدید :
53
- پاسخ :
1
|
تاریخ :
1399/06/04
- ساعت :
02:25:00 PM
- بازدید :
4427
- پاسخ :
2
|