Date formatting in C#
di Giuseppe Marchi
Data di pubblicazione: 26/09/2005
Voto della community: 4,50
(Votanti: 6)
La tecnica detta "Date formatting" è quella tecnica che permette di effettuare un controllo sulla formattazione di una data in formato stringa. Il framework rappresenta le date con il tipo di dato DateTime; questo tipo di dato implementa l'interfaccia IFormattable che gli permette di essere appunto formattato in una stringa, attraverso uno degli overload del metodo ToString(), potendo scegliere tra vari tipi di formati.
Il formato scelto va definito passando al metodo ToString() una stringa di testo contenente il pattern corrispondente. Ecco lelenco di tutti i pattern disponibili (prendendo come data il 18/09/2005 15:00):
Quindi, se per esempio volessimo stampare a video la data di oggi, ci basterebbe scrivere: Response.Write(DateTime.Now.ToString("d")); Nota: è bene ricordare che i valori della data e dell'ora dipendono dai settaggi di sistema.
Per comodità ho creato una classe sealed (chiamate DateFormatter) che permette di fare questo tipo di formattazione in maniera più comoda, senza doverci ricordare ogni volta il pattern utile ai nostri scopi; questa classe espone un metodo statico chiamato Format, che prende come parametri di input un oggetto di tipo DateTime rappresentante la data che vogliamo formattare, e un elemento di dell'enumeration DateFormatType, creata appunto per evitare di dover tenere a mente tutti i pattern, sia standard che custom, per la formattazione delle date. Ecco quindi come lutilizzo della classe DateFormatter, può aiutare e velocizzare la scrittura del codice di noi programmatori: Response.Write(DateFormatter.Format(DateTime.Now, DateFormatType.DefaultDateTime));
La documentazione dell'enumeration DateFormatType la potete trovare qui.
Link utili: Standard DateTime Format Strings Custom DateTime Format Strings Interfaccia IFormattable DateTime structure Si ringrazia PeppeDotNet.it per la gentile concessione dell'articolo.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||