Csharp/CSharp Tutorial/Date Time/DateTime Format

Материал из .Net Framework эксперт
Версия от 15:19, 26 мая 2010; Admin (обсуждение | вклад) (1 версия)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Culture-insensitive DateTime format strings

<source lang="csharp">Format string Meaning Sample output o Round-trippable 2010-01-02T17:11:30.0000000 r, R RFC 1123 standard Sun, 02 Jan 2000 17:11:30 GMT s Sortable; ISO 8601 2010-01-02T17:11:30 u "Universal" Sortable 2010-01-02 17:11:30Z U UTC Sunday, 02 January 2000 08:11:30</source>

Culture-sensitive DateTime format strings

<source lang="csharp">Format string Meaning Sample output d Short date 01/02/2010 D Long date Sunday, 02 January 2010 t Short time 17:18 T Long time 17:18:19 f Long date + short time Sunday, 02 January 2010 17:18 F Long date + long time Sunday, 02 January 2010 17:18:19 g Short date + short time 01/02/2010 17:18 G (default) Short date + long time 01/02/2010 17:18:19 m, M Month and day January 02 y, Y Year and month 2010 January</source>

DateTime Formatting

<source lang="csharp">Format Character Format Pattern Associated Property/ Description D MM/dd/yyyy ShortDatePattern D dddd, MMMM dd, yyyy LongDatePattern F dddd, MMMM dd, yyyy HH:mm Full date and time F dddd, MMMM dd, yyyy HH:mm:ss FullDateTimePattern G MM/dd/yyyy HH:mm General G MM/dd/yyyy HH:mm:ss General M, M MMMM dd MonthDayPattern r, R ddd, dd MMM yyyy HH":"mm":"ss "GMT" RFC1123Pattern S yyyy-MM-dd HH:mm:ss SortableDateTimePattern using local time T HH:mm ShortTimePattern T HH:mm:ss LongTimePattern U yyyy-MM-dd HH:mm:ss UniversalSortableDateTimePattern using universal time U dddd, MMMM dd, yyyy HH:mm:ss UniversalSortableDateTimePattern y, Y MMMM, yyyy YearMonthPattern</source>

Format time and date: {0:hh:mm tt}

<source lang="csharp">using System;

class MainClass {

 public static void Main() {  
   DateTime dt = DateTime.Now; 

   Console.WriteLine("Time is {0:hh:mm tt}", dt); 
 } 

}</source>

Time is 01:53 PM

Format time and date: 24 hour time is {0:HH:mm}

<source lang="csharp">using System;

class MainClass {

 public static void Main() {  
   DateTime dt = DateTime.Now; 

   Console.WriteLine("24 hour time is {0:HH:mm}", dt); 
 } 

}</source>

24 hour time is 13:53

Format time and date: Date is {0:ddd MMM dd, yyyy}

<source lang="csharp">using System;

class MainClass {

 public static void Main() {  
   DateTime dt = DateTime.Now; 

   Console.WriteLine("Date is {0:ddd MMM dd, yyyy}", dt); 
 } 

}</source>

Date is Sun Mar 25, 2007

Format time and date: Date is {0:gg}

<source lang="csharp">using System;

class MainClass {

 public static void Main() {  
   DateTime dt = DateTime.Now; 

   Console.WriteLine("Era: {0:gg}", dt); 
 } 

}</source>

Era: A.D.

Format time and date information.

<source lang="csharp">using System;

class MainClass {

 public static void Main() {  
   DateTime dt = DateTime.Now; // obtain current time 

   Console.WriteLine("d format: {0:d}", dt); 
   Console.WriteLine("D format: {0:D}", dt); 

   Console.WriteLine("t format: {0:t}", dt); 
   Console.WriteLine("T format: {0:T}", dt); 

   Console.WriteLine("f format: {0:f}", dt); 
   Console.WriteLine("F format: {0:F}", dt); 

   Console.WriteLine("g format: {0:g}", dt); 
   Console.WriteLine("G format: {0:G}", dt); 

   Console.WriteLine("m format: {0:m}", dt); 
   Console.WriteLine("M format: {0:M}", dt); 

   Console.WriteLine("r format: {0:r}", dt); 
   Console.WriteLine("R format: {0:R}", dt); 

   Console.WriteLine("s format: {0:s}", dt); 

   Console.WriteLine("u format: {0:u}", dt); 
   Console.WriteLine("U format: {0:U}", dt); 

   Console.WriteLine("y format: {0:y}", dt); 
   Console.WriteLine("Y format: {0:Y}", dt); 
 } 

}</source>

d format: 25/03/2007
D format: March 25, 2007
t format: 1:53 PM
T format: 1:53:55 PM
f format: March 25, 2007 1:53 PM
F format: March 25, 2007 1:53:55 PM
g format: 25/03/2007 1:53 PM
G format: 25/03/2007 1:53:55 PM
m format: March 25
M format: March 25
r format: Sun, 25 Mar 2007 13:53:55 GMT
R format: Sun, 25 Mar 2007 13:53:55 GMT
s format: 2007-03-25T13:53:55
u format: 2007-03-25 13:53:55Z
U format: March 25, 2007 8:53:55 PM
y format: March, 2007
Y format: March, 2007

Format time and date: Time with seconds{0:HH:mm:ss tt}

<source lang="csharp">using System;

class MainClass {

 public static void Main() {  
   DateTime dt = DateTime.Now; 

   Console.WriteLine("Time with seconds: " + "{0:HH:mm:ss tt}", dt); 
 } 

}</source>

Time with seconds: 13:53:57 PM

Format time and date: Use m for day of month{0:m}

<source lang="csharp">using System;

class MainClass {

 public static void Main() {  
   DateTime dt = DateTime.Now; 

   Console.WriteLine("Use m for day of month: {0:m}", dt); 
 } 

}</source>

Use m for day of month: March 25

Format time and date: use m for minutes: {0:%m}

<source lang="csharp">using System;

class MainClass {

 public static void Main() {  
   DateTime dt = DateTime.Now; 

   Console.WriteLine("use m for minutes: {0:%m}", dt); 
 } 

}</source>

use m for minutes: 53

Pre-built date/time specifiers

<source lang="csharp">using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Text; using System.Security.Cryptography; public class MainClass {

   public static void Main()
   {
       DateTime dt1 = new DateTime(2004, 10, 9, 22, 47, 35, 259);
       DateTimeFormatInfo di = new DateTimeFormatInfo();
       for (char c = "a"; c <= "z"; c++)
       {
           try
           {
               foreach (string s in di.GetAllDateTimePatterns(c))
               {
                   Console.WriteLine(""{0}": {1} - {2}/{3}", c, s,
                       dt1.ToString(c.ToString()), dt1.ToString(s));
               }
               char cUpper = Char.ToUpper(c);
               foreach (string s in di.GetAllDateTimePatterns(cUpper))
               {
                   Console.WriteLine(""{0}": {1} - {2}", cUpper, s,
                       dt1.ToString(cUpper.ToString()), dt1.ToString(s));
               }
           }
           catch (ArgumentException)
           {
               // Ignore--specifier not found.
           }
       }
   }

}</source>

"d": MM/dd/yyyy - 09/10/2004/10/09/2004
"D": dddd, dd MMMM yyyy - October 9, 2004
"f": dddd, dd MMMM yyyy HH:mm - October 9, 2004 10:47 PM/Saturday, 09 October 2004 22:47
"f": dddd, dd MMMM yyyy hh:mm tt - October 9, 2004 10:47 PM/Saturday, 09 October 2004 10:47 PM
"f": dddd, dd MMMM yyyy H:mm - October 9, 2004 10:47 PM/Saturday, 09 October 2004 22:47
"f": dddd, dd MMMM yyyy h:mm tt - October 9, 2004 10:47 PM/Saturday, 09 October 2004 10:47 PM
"F": dddd, dd MMMM yyyy HH:mm:ss - October 9, 2004 10:47:35 PM
"g": MM/dd/yyyy HH:mm - 09/10/2004 10:47 PM/10/09/2004 22:47
"g": MM/dd/yyyy hh:mm tt - 09/10/2004 10:47 PM/10/09/2004 10:47 PM
"g": MM/dd/yyyy H:mm - 09/10/2004 10:47 PM/10/09/2004 22:47
"g": MM/dd/yyyy h:mm tt - 09/10/2004 10:47 PM/10/09/2004 10:47 PM
"G": MM/dd/yyyy HH:mm:ss - 09/10/2004 10:47:35 PM
"m": MMMM dd - October 09/October 09
"M": MMMM dd - October 09
"o": yyyy"-"MM"-"dd"T"HH":"mm":"ss.fffffffK - 2004-10-09T22:47:35.2590000/2004-10-09T22:47:35.259000
0
"O": yyyy"-"MM"-"dd"T"HH":"mm":"ss.fffffffK - 2004-10-09T22:47:35.2590000
"r": ddd, dd MMM yyyy HH":"mm":"ss "GMT" - Sat, 09 Oct 2004 22:47:35 GMT/Sat, 09 Oct 2004 22:47:35 G
MT
"R": ddd, dd MMM yyyy HH":"mm":"ss "GMT" - Sat, 09 Oct 2004 22:47:35 GMT
"s": yyyy"-"MM"-"dd"T"HH":"mm":"ss - 2004-10-09T22:47:35/2004-10-09T22:47:35
"t": HH:mm - 10:47 PM/22:47
"t": hh:mm tt - 10:47 PM/10:47 PM
"t": H:mm - 10:47 PM/22:47
"t": h:mm tt - 10:47 PM/10:47 PM
"T": HH:mm:ss - 10:47:35 PM
"u": yyyy"-"MM"-"dd HH":"mm":"ss"Z" - 2004-10-09 22:47:35Z/2004-10-09 22:47:35Z
"U": dddd, dd MMMM yyyy HH:mm:ss - October 10, 2004 5:47:35 AM
"y": yyyy MMMM - October, 2004/2004 October
"Y": yyyy MMMM - October, 2004

Use the ToLongDateString() and ToShortDateString() methods to convert the date parts of a DateTime to long and short date strings

<source lang="csharp">using System; class MainClass {

 public static void Main()
 {
   DateTime myDateTime11 = new DateTime(2004, 1, 15, 23, 2, 5);
   Console.WriteLine("myDateTime11 = " + myDateTime11);
   Console.WriteLine("myDateTime11.ToLongDateString() = " + myDateTime11.ToLongDateString());
   Console.WriteLine("myDateTime11.ToShortDateString() = " + myDateTime11.ToShortDateString());
 }

}</source>

myDateTime11 = 15/01/2004 11:02:05 PM
myDateTime11.ToLongDateString() = January 15, 2004
myDateTime11.ToShortDateString() = 15/01/2004

Use the ToLongTimeString() and ToShortTimeString() methods to convert the time parts of a DateTime to long and short time strings

<source lang="csharp">using System; class MainClass {

 public static void Main()
 {
   DateTime myDateTime11 = new DateTime(2004, 1, 15, 23, 2, 5);
   Console.WriteLine("myDateTime11 = " + myDateTime11);
   Console.WriteLine("myDateTime11.ToLongTimeString() = " +  myDateTime11.ToLongTimeString());
   Console.WriteLine("myDateTime11.ToShortTimeString() = " +  myDateTime11.ToShortTimeString());
 }

}</source>

myDateTime11 = 15/01/2004 11:02:05 PM
myDateTime11.ToLongTimeString() = 11:02:05 PM
myDateTime11.ToShortTimeString() = 11:02 PM

Use the ToString() method to convert a DateTime to a string: d, D, f, F, g, G, m ,r, s, t,T, u, U, y

<source lang="csharp">using System; class MainClass {

 public static void Main()
 {
   DateTime myDateTime = new DateTime(2004, 1, 12, 22, 2, 10);
   Console.WriteLine("myDateTime.ToString() = " + myDateTime.ToString());
   Console.WriteLine("myDateTime.ToString(\"d\") = " + myDateTime.ToString("d"));
   Console.WriteLine("myDateTime.ToString(\"D\") = " + myDateTime.ToString("D"));
   Console.WriteLine("myDateTime.ToString(\"f\") = " + myDateTime.ToString("f"));
   Console.WriteLine("myDateTime.ToString(\"F\") = " + myDateTime.ToString("F"));
   Console.WriteLine("myDateTime.ToString(\"g\") = " + myDateTime.ToString("g"));
   Console.WriteLine("myDateTime.ToString(\"G\") = " + myDateTime.ToString("G"));
   Console.WriteLine("myDateTime.ToString(\"m\") = " + myDateTime.ToString("m"));
   Console.WriteLine("myDateTime.ToString(\"r\") = " + myDateTime.ToString("r"));
   Console.WriteLine("myDateTime.ToString(\"s\") = " + myDateTime.ToString("s"));
   Console.WriteLine("myDateTime.ToString(\"t\") = " + myDateTime.ToString("t"));
   Console.WriteLine("myDateTime.ToString(\"T\") = " + myDateTime.ToString("T"));
   Console.WriteLine("myDateTime.ToString(\"u\") = " + myDateTime.ToString("u"));
   Console.WriteLine("myDateTime.ToString(\"U\") = " + myDateTime.ToString("U"));
   Console.WriteLine("myDateTime.ToString(\"y\") = " + myDateTime.ToString("y"));
 }

}</source>

myDateTime.ToString() = 12/01/2004 10:02:10 PM
myDateTime.ToString("d") = 12/01/2004
myDateTime.ToString("D") = January 12, 2004
myDateTime.ToString("f") = January 12, 2004 10:02 PM
myDateTime.ToString("F") = January 12, 2004 10:02:10 PM
myDateTime.ToString("g") = 12/01/2004 10:02 PM
myDateTime.ToString("G") = 12/01/2004 10:02:10 PM
myDateTime.ToString("m") = January 12
myDateTime.ToString("r") = Mon, 12 Jan 2004 22:02:10 GMT
myDateTime.ToString("s") = 2004-01-12T22:02:10
myDateTime.ToString("t") = 10:02 PM
myDateTime.ToString("T") = 10:02:10 PM
myDateTime.ToString("u") = 2004-01-12 22:02:10Z
myDateTime.ToString("U") = January 13, 2004 6:02:10 AM
myDateTime.ToString("y") = January, 2004

Use the ToString() method to convert a DateTime to a string: MMMM dd, yyyy

<source lang="csharp">using System; class MainClass {

 public static void Main()
 {
   DateTime myDateTime = new DateTime(2004, 1, 12, 22, 2, 10);
   Console.WriteLine("myDateTime.ToString() = " + myDateTime.ToString());
   Console.WriteLine("myDateTime.ToString(\"MMMM dd, yyyy\") = " + myDateTime.ToString("MMMM dd, yyyy"));
 }

}</source>

myDateTime.ToString() = 12/01/2004 10:02:10 PM
myDateTime.ToString("MMMM dd, yyyy") = January 12, 2004