a

ABLY مقالات و مطالب مجموعه

String.Format & DateTime.ToString

String.Format & DateTime.ToString

بسم الله الرحمن الرحیم

آموزش String.Format & DateTime.ToString

String.Format & DateTime

در بسیاری از موارد شما می خواهید یک DateTime را به صورت های مختلف در برنامه خود نمایش دهید. بهترین روش انجام کار استفاده از String.Format می باشد.

در این آموزش قصد داریم فرمت ها و روش های مختلف نمایش تاریخ و زمان را در مثال های متفاوت نمایش دهیم تا از این پس در هر زمانی که نیاز به نمایش تاریخ و زمان در قالب خاصی داشتید بتوانید به سادگی با استفاده از این مثال ها کار خود را انجام دهید.

 

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

 

شما می توانید بین تاریخ و زمان از جدا کننده هایی مانند "/" و ":" استفاده نمایید.

بسم الله الرحمن الرحیم

آموزش String.Format & DateTime.ToString

String.Format & DateTime

در بسیاری از موارد شما می خواهید یک DateTime را به صورت های مختلف در برنامه خود نمایش دهید. بهترین روش انجام کار استفاده از String.Format می باشد.

در این آموزش قصد داریم فرمت ها و روش های مختلف نمایش تاریخ و زمان را در مثال های متفاوت نمایش دهیم تا از این پس در هر زمانی که نیاز به نمایش تاریخ و زمان در قالب خاصی داشتید بتوانید به سادگی با استفاده از این مثال ها کار خود را انجام دهید.

 

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

 

شما می توانید بین تاریخ و زمان از جدا کننده هایی مانند "/" و ":" استفاده نمایید.

 

// date separator in german culture is "." (so "/" changes to ".")
String.Format("{0:d/M/yyyy HH:mm:ss}", dt); // "9/3/2008 16:05:07" - english (en-US)
String.Format("{0:d/M/yyyy HH:mm:ss}", dt); // "9.3.2008 16:05:07" - german (de-DE)

در این جا چند مثال از نحوه ایجاد تاریخ و زمان به شکل های مختلف ایجاد کرده ایم.

// month/day numbers without/with leading zeroes
String.Format("{0:M/d/yyyy}", dt);            // "3/9/2008"
String.Format("{0:MM/dd/yyyy}", dt);          // "03/09/2008"

// day/month names
String.Format("{0:ddd, MMM d, yyyy}", dt);    // "Sun, Mar 9, 2008"
String.Format("{0:dddd, MMMM d, yyyy}", dt);  // "Sunday, March 9, 2008"

// two/four digit year
String.Format("{0:MM/dd/yy}", dt);            // "03/09/08"
String.Format("{0:MM/dd/yyyy}", dt);          // "03/09/2008" 

کار با DateTimeForma­tInfo

علاوه بر روش های بالا، استاندارد هایی نیز به صورت پیش فرض وجود دارد که در ساخت قالب های تاریخ و زمان می تواند مورد استفاده قرار گیرد. این قالب ها بر اساس culture جاری تعریف شده در کامپیوتر مورد استفاده می تواند متفاوت باشد. به طور مثال اگر از ShortTimePattern در en-US culture استفاده شود خروجی h:mm tt را نمایش خواهد داد و اگر همین الگو (ShortTimePattern) در de-DE culture استفاده شود خروجی HH:mm را به نمایش خواهد گذاشت.

در بخش مثال های متفاوتی را برای شما آماده کرده ایم. این مثال ها بر اساس en-US culture است.

 

Specifier  DateTimeFormatInfo                property Pattern value (for en-US culture)
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             SortableDateTi­mePattern            yyyy'-'MM'-'dd'T'HH':'mm':'ss (*)
u             UniversalSorta­bleDateTimePat­tern yyyy'-'MM'-'dd HH':'mm':'ss'Z' (*)

(*) = culture independent

کار با String.Format

اگر بخواهیم از الگو های (Pattern) بالا استفاده کنیم، می توانیم به صورت زیر عمل کنیم

 

String.Format("{0:t}", dt);  // "4:05 PM"                         ShortTime
String.Format("{0:d}", dt); // "3/9/2008" ShortDate
String.Format("{0:T}", dt); // "4:05:07 PM" LongTime
String.Format("{0:D}", dt); // "Sunday, March 09, 2008" LongDate
String.Format("{0:f}", dt); // "Sunday, March 09, 2008 4:05 PM" LongDate+ShortTime
String.Format("{0:F}", dt); // "Sunday, March 09, 2008 4:05:07 PM" FullDateTime
String.Format("{0:g}", dt); // "3/9/2008 4:05 PM" ShortDate+ShortTime
String.Format("{0:G}", dt); // "3/9/2008 4:05:07 PM" ShortDate+LongTime
String.Format("{0:m}", dt); // "March 09" MonthDay
String.Format("{0:y}", dt); // "March, 2008" YearMonth
String.Format("{0:r}", dt); // "Sun, 09 Mar 2008 16:05:07 GMT" RFC1123
String.Format("{0:s}", dt); // "2008-03-09T16:05:07" SortableDateTime
String.Format("{0:u}", dt); // "2008-03-09 16:05:07Z" UniversalSortableDateTime

 

Specifier DateTimeFormatInfo property Pattern value (for en-US culture)
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 SortableDateTi­mePattern yyyy'-'MM'-'dd'T'HH':'mm':'ss (*)
u UniversalSorta­bleDateTimePat­tern yyyy'-'MM'-'dd HH':'mm':'ss'Z' (*)
    (*) = culture independent

همچنین می توانید از دستورات زیر نیز استفاده کنید

Specifier    Description Output
d Short Date 08/04/2007
D Long Date 08 April 2007
t Short Time 21:08
T Long Time 21:08:59
f Full date and time 08 April 2007 21:08
F Full date and time (long) 08 April 2007 21:08:59
g Default date and time 08/04/2007 21:08
G Default date and time (long) 08/04/2007 21:08:59
M Day / Month 08 April
r RFC1123 date Sun, 08 Apr 2007 21:08:59 GMT
s Sortable date/time 2007-04-08T21:08:59
u Universal time, local timezone 2007-04-08 21:08:59Z
Y Month / Year April 2007
dd Day 08
ddd Short Day Name Sun
dddd Full Day Name Sunday
hh 2 digit hour 09
HH 2 digit hour (24 hour) 21
mm 2 digit minute 08
MM Month 04
MMM Short Month name Apr
MMMM Month name April
ss seconds 59
fff milliseconds 120
FFF milliseconds without trailing zero 12
tt AM/PM PM
yy 2 digit year 07
yyyy 4 digit year 2007
: Hours, minutes, seconds separator, e.g. {0:hh:mm:ss} 09:08:59
/ Year, month , day separator, e.g. {0:dd/MM/yyyy} 08/04/2007

نظرات یا سوالات خودرا با ما درمیان بگذارید

0912 097 5516 :Phone Number
0713 625 1757 :Phone Number