Condividi tramite


Stringhe di formato data e ora personalizzate

Una stringa di formato di data e ora definisce la rappresentazione di testo di un valore DateTime o DateTimeOffset risultante da un'operazione di formattazione. Può inoltre definire la rappresentazione di un valore di data e ora richiesto in un'operazione di analisi per convertire correttamente la stringa in una data e ora. Una stringa di formato personalizzata è costituita da uno o più identificatori di formato di data e ora personalizzati. Qualsiasi stringa diversa da una stringa di formato di data e ora standard viene interpretata come stringa di formato di data e ora personalizzata.

Le stringhe di formato di data e ora personalizzate possono essere utilizzate sia con valori DateTime che con valori DateTimeOffset.

SuggerimentoSuggerimento

È possibile scaricare l'utilità di formattazione, un'applicazione che consente di applicare le stringhe di formato a valori numerici o di data e ora e di visualizzare la stringa di risultato.

Nelle operazioni di formattazione, le stringhe di formato di data e ora personalizzate possono essere utilizzate con il metodo ToString di un'istanza di data e ora o con un metodo che supporta la formattazione composita. Nell'esempio seguente vengono illustrati entrambi gli utilizzi.

 Dim thisDate1 As Date = #6/10/2011#
 Console.WriteLine("Today is " + thisDate1.ToString("MMMM dd, yyyy") + ".")

 Dim thisDate2 As New DateTimeOffset(2011, 6, 10, 15, 24, 16, TimeSpan.Zero)
 Console.WriteLine("The current date and time: {0:MM/dd/yy H:mm:ss zzz}", 
                   thisDate2) 
 ' The example displays the following output:
'    Today is June 10, 2011.
'    The current date and time: 06/10/11 15:24:16 +00:00
DateTime thisDate1 = new DateTime(2011, 6, 10);
Console.WriteLine("Today is " + thisDate1.ToString("MMMM dd, yyyy") + ".");

DateTimeOffset thisDate2 = new DateTimeOffset(2011, 6, 10, 15, 24, 16, 
                                              TimeSpan.Zero);
Console.WriteLine("The current date and time: {0:MM/dd/yy H:mm:ss zzz}", 
                   thisDate2); 
// The example displays the following output:
//    Today is June 10, 2011.
//    The current date and time: 06/10/11 15:24:16 +00:00

Nelle operazioni di analisi, le stringhe di formato di data e ora personalizzate possono essere utilizzate con i metodi DateTime.ParseExact, DateTime.TryParseExact, DateTimeOffset.ParseExact e DateTimeOffset.TryParseExact. Questi metodi richiedono che una stringa di input sia esattamente conforme a un modello specifico affinché l'operazione di analisi abbia esito positivo. Nell'esempio seguente viene illustrata una chiamata al metodo DateTimeOffset.ParseExact(String, String, IFormatProvider) per analizzare una data che deve includere un giorno, un mese e un anno a due cifre.

Imports System.Globalization

Module Example
   Public Sub Main()
      Dim dateValues() As String = { "30-12-2011", "12-30-2011", 
                                      "30-12-11", "12-30-11" }
      Dim pattern As String = "MM-dd-yy"
      Dim parsedDate As Date

      For Each dateValue As String In dateValues
         If DateTime.TryParseExact(dateValue, pattern, Nothing, 
                                   DateTimeStyles.None, parsedDate) Then
            Console.WriteLine("Converted '{0}' to {1:d}.", 
                              dateValue, parsedDate)
         Else
            Console.WriteLine("Unable to convert '{0}' to a date and time.", 
                              dateValue)
         End If                                                         
      Next
   End Sub
End Module
' The example displays the following output:
'    Unable to convert '30-12-2011' to a date and time.
'    Unable to convert '12-30-2011' to a date and time.
'    Unable to convert '30-12-11' to a date and time.
'    Converted '12-30-11' to 12/30/2011.
using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] dateValues = { "30-12-2011", "12-30-2011", 
                              "30-12-11", "12-30-11" };
      string pattern = "MM-dd-yy";
      DateTime parsedDate;

      foreach (var dateValue in dateValues) {
         if (DateTime.TryParseExact(dateValue, pattern, null, 
                                   DateTimeStyles.None, out parsedDate))
            Console.WriteLine("Converted '{0}' to {1:d}.", 
                              dateValue, parsedDate);
         else
            Console.WriteLine("Unable to convert '{0}' to a date and time.", 
                              dateValue);
      }
   }
}
// The example displays the following output:
//    Unable to convert '30-12-2011' to a date and time.
//    Unable to convert '12-30-2011' to a date and time.
//    Unable to convert '30-12-11' to a date and time.
//    Converted '12-30-11' to 12/30/2011.

Nella tabella seguente vengono descritti gli identificatori di formato di data e ora personalizzati e viene visualizzata una stringa di risultato prodotta da ogni identificatore di formato. Se un identificatore di formato specifico produce una stringa di risultato localizzata, nell'esempio vengono indicate anche le impostazioni cultura alle quali si applica la stringa di risultato. Vedere la sezione Note per ulteriori informazioni sull'utilizzo di stringhe di formato di data e ora personalizzate.

Identificatore di formato

Descrizione

Esempi

"d"

Giorno del mese, da 1 a 31.

Ulteriori informazioni: Identificatore di formato personalizzato "d".

6/1/2009 1:45:30 PM -> 1

6/15/2009 1:45:30 PM -> 15

"dd"

Giorno del mese, da 01 a 31.

Ulteriori informazioni: Identificatore di formato personalizzato "dd".

6/1/2009 1:45:30 PM -> 01

6/15/2009 1:45:30 PM -> 15

"ddd"

Nome abbreviato del giorno della settimana.

Ulteriori informazioni: Identificatore di formato personalizzato "ddd".

6/15/2009 1:45:30 PM -> Mon (en-US)

6/15/2009 1:45:30 PM -> Пн (ru-RU)

6/15/2009 1:45:30 PM -> lun. (fr-FR)

"dddd"

Nome completo del giorno della settimana.

Ulteriori informazioni: Identificatore di formato personalizzato "dddd".

6/15/2009 1:45:30 PM -> Monday (en-US)

6/15/2009 1:45:30 PM -> понедельник (ru-RU)

6/15/2009 1:45:30 PM -> lundi (fr-FR)

"f"

Decimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "f".

6/15/2009 13:45:30.617 -> 6

6/15/2009 13:45:30.050 -> 0

"ff"

Centesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "ff".

6/15/2009 13:45:30.617 -> 61

6/15/2009 13:45:30.005 -> 00

"fff"

Millisecondi in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "fff".

6/15/2009 13:45:30.617 -> 617

6/15/2009 13:45:30.0005 -> 000

"ffff"

Decimillesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "ffff".

6/15/2009 13:45:30.6175 -> 6175

6/15/2009 13:45:30.00005 -> 0000

"fffff"

Centomillesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "fffff".

6/15/2009 13:45:30.61754 -> 61754

6/15/2009 13:45:30.000005 -> 00000

"ffffff"

Milionesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "ffffff".

6/15/2009 13:45:30.617542 -> 617542

6/15/2009 13:45:30.0000005 -> 000000

"fffffff"

Decine di milionesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "fffffff".

6/15/2009 13:45:30.6175425 -> 6175425

6/15/2009 13:45:30.0001150 -> 0001150

"F"

Se diverso da zero, decimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "F".

6/15/2009 13:45:30.617 -> 6

6/15/2009 13:45:30.050 -> (nessun output)

"FF"

Se diverso da zero, centesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "FF".

6/15/2009 13:45:30.617 -> 61

6/15/2009 13:45:30.005 -> (nessun output)

"FFF"

Se diverso da zero, millisecondi in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "FFF".

6/15/2009 13:45:30.617 -> 617

6/15/2009 13:45:30.0005 -> (nessun output)

"FFFF"

Se diverso da zero, decimillesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "FFFF".

6/1/2009 13:45:30.5275 -> 5275

6/15/2009 13:45:30.00005 -> (nessun output)

"FFFFF"

Se diverso da zero, centomillesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "FFFFF".

6/15/2009 13:45:30.61754 -> 61754

6/15/2009 13:45:30.000005 -> (nessun output)

"FFFFFF"

Se diverso da zero, milionesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "FFFFFF".

6/15/2009 13:45:30.617542 -> 617542

6/15/2009 13:45:30.0000005 -> (nessun output)

"FFFFFFF"

Se diverso da zero, decimilionesimi di secondo in un valore di data e ora.

Ulteriori informazioni: Identificatore di formato personalizzato "FFFFFFF".

6/15/2009 13:45:30.6175425 -> 6175425

6/15/2009 13:45:30.0001150 -> 000115

"g", "gg"

Periodo o era.

Ulteriori informazioni: Identificatore di formato personalizzato "g" o "gg".

6/15/2009 1:45:30 PM -> A.D.

"h"

Ora, utilizzando un orario in formato 12 ore da 1 a 12.

Ulteriori informazioni: Identificatore di formato personalizzato "h".

6/15/2009 1:45:30 AM -> 1

6/15/2009 1:45:30 PM -> 1

"hh"

Ora, utilizzando un orario in formato 12 ore da 01 a 12.

Ulteriori informazioni: Identificatore di formato personalizzato "hh".

6/15/2009 1:45:30 AM -> 01

6/15/2009 1:45:30 PM -> 01

"H"

Ora, utilizzando un orario in formato 24 ore da 0 a 23.

Ulteriori informazioni: Identificatore di formato personalizzato "H".

6/15/2009 1:45:30 AM -> 1

6/15/2009 1:45:30 PM -> 13

"HH"

Ora, utilizzando un orario in formato 24 ore da 00 a 23.

Ulteriori informazioni: Identificatore di formato personalizzato "HH".

6/15/2009 1:45:30 AM -> 01

6/15/2009 1:45:30 PM -> 13

"K"

Informazioni sul fuso orario.

Ulteriori informazioni: Identificatore di formato personalizzato "K".

Con valori DateTime:

6/15/2009 1:45:30 PM, Kind Unspecified ->

6/15/2009 1:45:30 PM, Kind Utc -> Z

6/15/2009 1:45:30 PM, Kind Local -> -07:00 (in base alle impostazioni del computer locale)

Con valori DateTimeOffset:

6/15/2009 1:45:30 AM -07:00 --> -07:00

6/15/2009 8:45:30 AM +00:00 --> +00:00

"m"

Minuti, da 0 a 59.

Ulteriori informazioni: Identificatore di formato personalizzato "m".

6/15/2009 1:09:30 AM -> 9

6/15/2009 1:09:30 PM -> 9

"mm"

Minuti, da 00 a 59.

Ulteriori informazioni: Identificatore di formato personalizzato "mm".

6/15/2009 1:09:30 AM -> 09

6/15/2009 1:09:30 PM -> 09

"M"

Mese, da 1 a 12.

Ulteriori informazioni: Identificatore di formato personalizzato "M".

6/15/2009 1:45:30 PM -> 6

"MM"

Mese, da 01 a 12.

Ulteriori informazioni: Identificatore di formato personalizzato "MM".

6/15/2009 1:45:30 PM -> 06

"MMM"

Nome abbreviato del mese.

Ulteriori informazioni: Identificatore di formato personalizzato "MMM".

6/15/2009 1:45:30 PM -> Jun (en-US)

6/15/2009 1:45:30 PM -> juin (fr-FR)

6/15/2009 1:45:30 PM -> Jun (zu-ZA)

"MMMM"

Nome completo del mese.

Ulteriori informazioni: Identificatore di formato personalizzato "MMMM".

6/15/2009 1:45:30 PM -> June (en-US)

6/15/2009 1:45:30 PM -> juni (da-DK)

6/15/2009 1:45:30 PM -> uJuni (zu-ZA)

"s"

Secondi, da 0 a 59.

Ulteriori informazioni: Identificatore di formato personalizzato "s".

6/15/2009 1:45:09 PM -> 9

"ss"

Secondi, da 00 a 59.

Ulteriori informazioni: Identificatore di formato personalizzato "ss".

6/15/2009 1:45:09 PM -> 09

"t"

Primo carattere dell'indicatore AM/PM.

Ulteriori informazioni: Identificatore di formato personalizzato "t".

6/15/2009 1:45:30 PM -> P (en-US)

6/15/2009 1:45:30 PM -> 午 (ja-JP)

6/15/2009 1:45:30 PM -> (fr-FR)

"tt"

Indicatore AM/PM.

Ulteriori informazioni: Identificatore di formato personalizzato "tt".

6/15/2009 1:45:30 PM -> PM (en-US)

6/15/2009 1:45:30 PM -> 午後 (ja-JP)

6/15/2009 1:45:30 PM -> (fr-FR)

"y"

Anno, da 0 a 99.

Ulteriori informazioni: Identificatore di formato personalizzato "y".

1/1/0001 12:00:00 AM -> 1

1/1/0900 12:00:00 AM -> 0

1/1/1900 12:00:00 AM -> 0

6/15/2009 1:45:30 PM -> 9

"yy"

Anno, da 00 a 99.

Ulteriori informazioni: Identificatore di formato personalizzato "yy".

1/1/0001 12:00:00 AM -> 01

1/1/0900 12:00:00 AM -> 00

1/1/1900 12:00:00 AM -> 00

6/15/2009 1:45:30 PM -> 09

"yyy"

Anno, con un minimo di tre cifre.

Ulteriori informazioni: Identificatore di formato personalizzato "yyy".

1/1/0001 12:00:00 AM -> 001

1/1/0900 12:00:00 AM -> 900

1/1/1900 12:00:00 AM -> 1900

6/15/2009 1:45:30 PM -> 2009

"yyyy"

Anno, come numero a quattro cifre.

Ulteriori informazioni: Identificatore di formato personalizzato "yyyy".

1/1/0001 12:00:00 AM -> 0001

1/1/0900 12:00:00 AM -> 0900

1/1/1900 12:00:00 AM -> 1900

6/15/2009 1:45:30 PM -> 2009

"yyyyy"

Anno, come numero a cinque cifre.

Ulteriori informazioni: Identificatore di formato personalizzato "yyyyy".

1/1/0001 12:00:00 AM -> 00001

6/15/2009 1:45:30 PM -> 02009

"z"

Offset delle ore rispetto a UTC, senza zeri iniziali.

Ulteriori informazioni: Identificatore di formato personalizzato "z".

6/15/2009 1:45:30 PM -07:00 -> -7

"zz"

Offset delle ore rispetto a UTC, con uno zero iniziale per un valore a una sola cifra.

Ulteriori informazioni: Identificatore di formato personalizzato "zz".

6/15/2009 1:45:30 PM -07:00 -> -07

"zzz"

Offset di ore e minuti rispetto a UTC.

Ulteriori informazioni: Identificatore di formato personalizzato "zzz".

6/15/2009 1:45:30 PM -07:00 -> -07:00

":"

Separatore dell'ora.

Ulteriori informazioni: Identificatore di formato personalizzato ":".

6/15/2009 1:45:30 PM -> : (en-US)

6/15/2009 1:45:30 PM -> . (it-IT)

6/15/2009 1:45:30 PM -> : (ja-JP)

"/"

Separatore di data.

Ulteriori informazioni: Identificatore di formato personalizzato "/".

6/15/2009 1:45:30 PM -> / (en-US)

6/15/2009 1:45:30 PM -> - (ar-DZ)

6/15/2009 1:45:30 PM -> . (tr-TR)

"stringa"

'stringa'

Delimitatore di stringa letterale.

6/15/2009 1:45:30 PM ("arr:" h:m t) -> arr: 1:45 P

6/15/2009 1:45:30 PM ('arr:' h:m t) -> arr: 1:45 P

%

Definisce il carattere seguente come identificatore di formato personalizzato.

Ulteriori informazioni: Utilizzo di singoli identificatori di formato personalizzati.

6/15/2009 1:45:30 PM (%h) -> 1

\

Carattere di escape.

6/15/2009 1:45:30 PM (h \h) -> 1 h

Qualsiasi altro carattere

Il carattere viene copiato nella stringa di risultato senza alcuna modifica.

Ulteriori informazioni: Utilizzo del carattere di escape.

6/15/2009 1:45:30 AM (arr hh:mm t) -> arr 01:45 A

Nelle sezioni seguenti vengono fornite ulteriori informazioni su ogni identificatore di formato di data e ora personalizzato. Se non specificato diversamente, ogni identificatore genera una rappresentazione di stringa identica, indipendentemente dal fatto che venga utilizzato con un valore DateTime o con un valore DateTimeOffset.

Identificatore di formato personalizzato "d"

L'identificatore di formato personalizzato "d" rappresenta il giorno del mese come numero compreso tra 1 e 31. Un giorno a una sola cifra viene formattato senza uno zero iniziale.

Se l'identificatore di formato "d" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard "d". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "d" viene incluso in diverse stringhe di formato.

Dim date1 As Date = #08/29/2008 7:27:15PM#

Console.WriteLine(date1.ToString("d, M", _
                  CultureInfo.InvariantCulture)) 
' Displays 29, 8

Console.WriteLine(date1.ToString("d MMMM", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays 29 August
Console.WriteLine(date1.ToString("d MMMM", _
                  CultureInfo.CreateSpecificCulture("es-MX")))
' Displays 29 agosto                                                
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15); 

Console.WriteLine(date1.ToString("d, M", 
                  CultureInfo.InvariantCulture)); 
// Displays 29, 8

Console.WriteLine(date1.ToString("d MMMM", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays 29 August
Console.WriteLine(date1.ToString("d MMMM", 
                  CultureInfo.CreateSpecificCulture("es-MX")));
// Displays 29 agosto                                                

Torna alla tabella

Identificatore di formato personalizzato "dd"

La stringa di formato personalizzata "dd" rappresenta il giorno del mese come numero compreso tra 01 e 31. Un giorno a una sola cifra viene formattato con uno zero iniziale.

Nell'esempio seguente l'identificatore di formato personalizzato "dd" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #1/2/2008 6:30:15AM#

Console.WriteLine(date1.ToString("dd, MM", _
                  CultureInfo.InvariantCulture)) 
' 02, 01
DateTime date1 = new DateTime(2008, 1, 2, 6, 30, 15);

Console.WriteLine(date1.ToString("dd, MM", 
                  CultureInfo.InvariantCulture)); 
// 02, 01

Torna alla tabella

Identificatore di formato personalizzato "ddd"

L'identificatore di formato personalizzato "ddd" rappresenta il nome abbreviato del giorno della settimana. Il nome abbreviato localizzato del giorno della settimana viene recuperato dalla proprietà DateTimeFormatInfo.AbbreviatedDayNames delle impostazioni cultura correnti o specificate.

Nell'esempio seguente l'identificatore di formato personalizzato "ddd" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #08/29/2008 7:27:15PM#

Console.WriteLine(date1.ToString("ddd d MMM", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays Fri 29 Aug
Console.WriteLine(date1.ToString("ddd d MMM", _
                  CultureInfo.CreateSpecificCulture("fr-FR")))
' Displays ven. 29 août                                                
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15);

Console.WriteLine(date1.ToString("ddd d MMM", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays Fri 29 Aug
Console.WriteLine(date1.ToString("ddd d MMM", 
                  CultureInfo.CreateSpecificCulture("fr-FR")));
// Displays ven. 29 août                                                

Torna alla tabella

Identificatore di formato personalizzato "dddd"

L'identificatore di formato personalizzato "dddd" (più qualsiasi numero di identificatori "d" aggiuntivi) rappresenta il nome completo del giorno della settimana. Il nome localizzato del giorno della settimana viene recuperato dalla proprietà DateTimeFormatInfo.DayNames delle impostazioni cultura correnti o specificate.

Nell'esempio seguente l'identificatore di formato personalizzato "dddd" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #08/29/2008 7:27:15PM#

Console.WriteLine(date1.ToString("dddd dd MMMM", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays Friday 29 August
Console.WriteLine(date1.ToString("dddd dd MMMM", _
                  CultureInfo.CreateSpecificCulture("it-IT")))
' Displays venerdì 29 agosto                                          
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15);

Console.WriteLine(date1.ToString("dddd dd MMMM", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays Friday 29 August
Console.WriteLine(date1.ToString("dddd dd MMMM", 
                  CultureInfo.CreateSpecificCulture("it-IT")));
// Displays venerdì 29 agosto                                

Torna alla tabella

Identificatore di formato personalizzato "f"

L'identificatore di formato personalizzato "f" rappresenta la cifra più significativa della frazione di secondi, ovvero i decimi di secondo in un valore di data e ora.

Se l'identificatore di formato "f" viene utilizzato senza altri identificatori di formato, viene interpretato come l'identificatore di formato di data e ora standard "f". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Quando si utilizzano identificatori di formato "f" come parte di una stringa di formato fornita al metodo ParseExact, TryParseExact, ParseExact o TryParseExact, il numero di identificatori di formato "f" indica il numero di cifre più significative della frazione di secondi che deve essere presente per analizzare correttamente la stringa.

Nell'esempio seguente l'identificatore di formato personalizzato "f" viene incluso in una stringa di formato personalizzata.

Dim date1 As New Date(2008, 8, 29, 19, 27, 15, 018)
Dim ci As CultureInfo = CultureInfo.InvariantCulture

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci))
' Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci))
' Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci))
' Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci))
' Displays 07:27:15.018
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15, 18);
CultureInfo ci = CultureInfo.InvariantCulture;

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci));
// Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci));
// Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci));
// Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci));
// Displays 07:27:15.018

Torna alla tabella

Identificatore di formato personalizzato "ff"

L'identificatore di formato personalizzato "ff" rappresenta le due cifre più significative della frazione di secondi, ovvero i centesimi di secondo in un valore di data e ora.

Nell'esempio seguente l'identificatore di formato personalizzato "ff" viene incluso in una stringa di formato personalizzata.

Dim date1 As New Date(2008, 8, 29, 19, 27, 15, 018)
Dim ci As CultureInfo = CultureInfo.InvariantCulture

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci))
' Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci))
' Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci))
' Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci))
' Displays 07:27:15.018
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15, 18);
CultureInfo ci = CultureInfo.InvariantCulture;

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci));
// Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci));
// Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci));
// Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci));
// Displays 07:27:15.018

Torna alla tabella

Identificatore di formato personalizzato "fff"

L'identificatore di formato personalizzato "fff" rappresenta le tre cifre più significative della frazione di secondi, ovvero i millisecondi in un valore di data e ora.

Nell'esempio seguente l'identificatore di formato personalizzato "fff" viene incluso in una stringa di formato personalizzata.

Dim date1 As New Date(2008, 8, 29, 19, 27, 15, 018)
Dim ci As CultureInfo = CultureInfo.InvariantCulture

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci))
' Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci))
' Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci))
' Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci))
' Displays 07:27:15.018
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15, 18);
CultureInfo ci = CultureInfo.InvariantCulture;

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci));
// Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci));
// Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci));
// Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci));
// Displays 07:27:15.018

Torna alla tabella

Identificatore di formato personalizzato "ffff"

L'identificatore di formato personalizzato "ffff" rappresenta le quattro cifre più significative della frazione di secondi, ovvero i decimillesimi di secondo in un valore di data e ora.

Sebbene sia possibile visualizzare i decimillesimi di un componente relativo ai secondi di un valore di ora, tale valore potrebbe non essere significativo. La precisione dei valori di data e ora dipende dalla risoluzione del clock di sistema. Nei sistemi operativi Windows NT versione 3.5 e versioni successive e Windows Vista la risoluzione del clock è di circa 10-15 millisecondi.

Torna alla tabella

Identificatore di formato personalizzato "fffff"

L'identificatore di formato personalizzato "fffff" rappresenta le cinque cifre più significative della frazione di secondi, ovvero i centomillesimi di secondo in un valore di data e ora.

Sebbene sia possibile visualizzare i centomillesimi di un componente relativo ai secondi di un valore di ora, tale valore potrebbe non essere significativo. La precisione dei valori di data e ora dipende dalla risoluzione del clock di sistema. Nei sistemi operativi Windows NT 3.5 e versioni successive e Windows Vista la risoluzione del clock è di circa 10-15 millisecondi.

Torna alla tabella

Identificatore di formato personalizzato "ffffff"

L'identificatore di formato personalizzato "ffffff" rappresenta le sei cifre più significative della frazione di secondi, ovvero i milionesimi di secondo in un valore di data e ora.

Sebbene sia possibile visualizzare i milionesimi di un componente relativo ai secondi di un valore di ora, tale valore potrebbe non essere significativo. La precisione dei valori di data e ora dipende dalla risoluzione del clock di sistema. Nei sistemi operativi Windows NT 3.5 e versioni successive e Windows Vista la risoluzione del clock è di circa 10-15 millisecondi.

Torna alla tabella

Identificatore di formato personalizzato "fffffff"

L'identificatore di formato personalizzato "fffffff" rappresenta le sette cifre più significative della frazione di secondi, ovvero i decimilionesimi di secondo in un valore di data e ora.

Sebbene sia possibile visualizzare i decimilionesimi di un componente relativo ai secondi di un valore di ora, tale valore potrebbe non essere significativo. La precisione dei valori di data e ora dipende dalla risoluzione del clock di sistema. Nei sistemi operativi Windows NT 3.5 e versioni successive e Windows Vista la risoluzione del clock è di circa 10-15 millisecondi.

Torna alla tabella

Identificatore di formato personalizzato "F"

L'identificatore di formato personalizzato "F" rappresenta la cifra più significativa della frazione di secondi, ovvero i decimi di secondo in un valore di data e ora. Se la cifra è zero, non viene prodotta alcuna visualizzazione.

Se l'identificatore di formato "F" viene utilizzato senza altri identificatori di formato, viene interpretato come l'identificatore di formato di data e ora standard "F". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Il numero di identificatoti di formato "F" utilizzati con il metodo ParseExact, TryParseExact, ParseExact o TryParseExact indica il numero massimo di cifre più significative della frazione di secondi che possono essere presenti per analizzare correttamente la stringa.

Nell'esempio seguente l'identificatore di formato personalizzato "F" viene incluso in una stringa di formato personalizzata.

Dim date1 As New Date(2008, 8, 29, 19, 27, 15, 018)
Dim ci As CultureInfo = CultureInfo.InvariantCulture

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci))
' Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci))
' Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci))
' Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci))
' Displays 07:27:15.018
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15, 18);
CultureInfo ci = CultureInfo.InvariantCulture;

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci));
// Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci));
// Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci));
// Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci));
// Displays 07:27:15.018

Torna alla tabella

Identificatore di formato personalizzato "FF"

L'identificatore di formato personalizzato "FF" rappresenta le due cifre più significative della frazione di secondi, ovvero i centesimi di secondo in un valore di data e ora. Gli zeri finali o le cifre con due zeri non vengono tuttavia visualizzate.

Nell'esempio seguente l'identificatore di formato personalizzato "FF" viene incluso in una stringa di formato personalizzata.

Dim date1 As New Date(2008, 8, 29, 19, 27, 15, 018)
Dim ci As CultureInfo = CultureInfo.InvariantCulture

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci))
' Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci))
' Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci))
' Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci))
' Displays 07:27:15.018
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15, 18);
CultureInfo ci = CultureInfo.InvariantCulture;

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci));
// Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci));
// Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci));
// Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci));
// Displays 07:27:15.018

Torna alla tabella

Identificatore di formato personalizzato "FFF"

L'identificatore di formato personalizzato "FFF" rappresenta le tre cifre più significative della frazione di secondi, ovvero i millisecondi in un valore di data e ora. Gli zeri finali o le cifre con tre zeri non vengono tuttavia visualizzate.

Nell'esempio seguente l'identificatore di formato personalizzato "FFF" viene incluso in una stringa di formato personalizzata.

Dim date1 As New Date(2008, 8, 29, 19, 27, 15, 018)
Dim ci As CultureInfo = CultureInfo.InvariantCulture

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci))
' Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci))
' Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci))
' Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci))
' Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci))
' Displays 07:27:15.018
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15, 18);
CultureInfo ci = CultureInfo.InvariantCulture;

Console.WriteLine(date1.ToString("hh:mm:ss.f", ci));
// Displays 07:27:15.0
Console.WriteLine(date1.ToString("hh:mm:ss.F", ci));
// Displays 07:27:15
Console.WriteLine(date1.ToString("hh:mm:ss.ff", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.FF", ci));
// Displays 07:27:15.01
Console.WriteLine(date1.ToString("hh:mm:ss.fff", ci));
// Displays 07:27:15.018
Console.WriteLine(date1.ToString("hh:mm:ss.FFF", ci));
// Displays 07:27:15.018

Torna alla tabella

Identificatore di formato personalizzato "FFFF"

L'identificatore di formato personalizzato "FFFF" rappresenta le quattro cifre più significative della frazione di secondi, ovvero i decimillesimi di secondo in un valore di data e ora. Gli zeri finali o le cifre con quattro zeri non vengono tuttavia visualizzate.

Sebbene sia possibile visualizzare i decimillesimi di un componente relativo ai secondi di un valore di ora, tale valore potrebbe non essere significativo. La precisione dei valori di data e ora dipende dalla risoluzione del clock di sistema. Nei sistemi operativi Windows NT 3.5 e versioni successive e Windows Vista la risoluzione del clock è di circa 10-15 millisecondi.

Torna alla tabella

Identificatore di formato personalizzato "FFFFF"

L'identificatore di formato personalizzato "FFFFF" rappresenta le cinque cifre più significative della frazione di secondi, ovvero i centomillesimi di secondo in un valore di data e ora. Gli zeri finali o le cifre con cinque zeri non vengono tuttavia visualizzate.

Sebbene sia possibile visualizzare i centomillesimi di un componente relativo ai secondi di un valore di ora, tale valore potrebbe non essere significativo. La precisione dei valori di data e ora dipende dalla risoluzione del clock di sistema. Nei sistemi operativi Windows NT 3.5 e versioni successive e Windows Vista la risoluzione del clock è di circa 10-15 millisecondi.

Torna alla tabella

Identificatore di formato personalizzato "FFFFFF"

L'identificatore di formato personalizzato "FFFFFF" rappresenta le sei cifre più significative della frazione di secondi, ovvero i milionesimi di secondo in un valore di data e ora. Gli zeri finali o le cifre con sei zeri non vengono visualizzate.

Sebbene sia possibile visualizzare i milionesimi di un componente relativo ai secondi di un valore di ora, tale valore potrebbe non essere significativo. La precisione dei valori di data e ora dipende dalla risoluzione dell'orologio di sistema. Nei sistemi operativi Windows NT 3.5 e versioni successive e Windows Vista la risoluzione del clock è di circa 10-15 millisecondi.

Torna alla tabella

Identificatore di formato personalizzato "FFFFFFF"

L'identificatore di formato personalizzato "FFFFFFF" rappresenta le sette cifre più significative della frazione di secondi, ovvero i decimilionesimi di secondo in un valore di data e ora. Gli zeri finali o le cifre con sette zeri non vengono tuttavia visualizzate.

Sebbene sia possibile visualizzare i decimilionesimi di un componente relativo ai secondi di un valore di ora, tale valore potrebbe non essere significativo. La precisione dei valori di data e ora dipende dalla risoluzione del clock di sistema. Nei sistemi operativi Windows NT 3.5 e versioni successive e Windows Vista la risoluzione del clock è di circa 10-15 millisecondi.

Torna alla tabella

Identificatore di formato personalizzato "g" o "gg"

Gli identificatori di formato personalizzati "g" o "gg" (più qualsiasi numero di identificatori "g" aggiuntivi) rappresentano il periodo o l'era, ad esempio D.C. Questo identificatore viene ignorato dall'operazione di formattazione se la data da formattare non è associata a una stringa di periodo o di era.

Se l'identificatore di formato "g" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard "g". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "g" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #08/04/0070#

Console.WriteLine(date1.ToString("MM/dd/yyyy g", _
                  CultureInfo.InvariantCulture))
' Displays 08/04/0070 A.D.                        
Console.WriteLine(date1.ToString("MM/dd/yyyy g", _
                  CultureInfo.CreateSpecificCulture("fr-FR")))                         
' Displays 08/04/0070 ap. J.-C.
DateTime date1 = new DateTime(70, 08, 04);

Console.WriteLine(date1.ToString("MM/dd/yyyy g", 
                  CultureInfo.InvariantCulture));
// Displays 08/04/0070 A.D.                        
Console.WriteLine(date1.ToString("MM/dd/yyyy g", 
                  CultureInfo.CreateSpecificCulture("fr-FR")));                         
// Displays 08/04/0070 ap. J.-C.

Torna alla tabella

Identificatore di formato personalizzato "h"

L'identificatore di formato personalizzato "h" rappresenta l'ora come numero compreso tra 1 e 12, ovvero l'ora rappresentata nell'orario in formato 12 ore in base al quale il conteggio riparte da mezzanotte o da mezzogiorno. Una particolare ora dopo mezzanotte non è distinguibile dalla stessa ora dopo mezzogiorno. L'ora non viene arrotondata e se è costituita da una singola cifra viene formattata senza zero iniziale. Se viene, ad esempio, specificata un'ora equivalente alle 5:43 della mattina o del pomeriggio, tramite questo identificatore di formato personalizzato viene visualizzato "5".

Se l'identificatore di formato "h" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard e viene generato un evento FormatException. Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "h" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date 
date1 = #6:09:01PM#
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.InvariantCulture))
' Displays 6:9:1 P
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.CreateSpecificCulture("el-GR")))
' Displays 6:9:1 µ                        
date1 = New Date(2008, 1, 1, 18, 9, 1, 500)
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.InvariantCulture))
' Displays 6:9:1.5 P
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.CreateSpecificCulture("el-GR")))
' Displays 6:9:1.5 µ
DateTime date1; 
date1 = new DateTime(2008, 1, 1, 18, 9, 1);
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.InvariantCulture));
// Displays 6:9:1 P
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.CreateSpecificCulture("el-GR")));
// Displays 6:9:1 µ                        
date1 = new DateTime(2008, 1, 1, 18, 9, 1, 500);
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.InvariantCulture));
// Displays 6:9:1.5 P
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.CreateSpecificCulture("el-GR")));
// Displays 6:9:1.5 µ

Torna alla tabella

Identificatore di formato personalizzato "hh"

L'identificatore di formato personalizzato "hh" (più qualsiasi numero di identificatori "h" aggiuntivi) rappresenta l'ora come numero compreso tra 01 e 12, ovvero l'ora rappresentata nell'orario in formato 12 ore in base al quale il conteggio riparte da mezzanotte o da mezzogiorno. Una particolare ora dopo mezzanotte non è distinguibile dalla stessa ora dopo mezzogiorno. L'ora non viene arrotondata e se è costituita da una singola cifra viene formattata con uno zero iniziale. Se viene, ad esempio, specificata un'ora equivalente alle 5:43 della mattina o del pomeriggio, tramite questo identificatore di formato viene visualizzato "05".

Nell'esempio seguente l'identificatore di formato personalizzato "hh" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date 
date1 = #6:09:01PM#
Console.WriteLine(date1.ToString("hh:mm:ss tt", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss tt", _
                  CultureInfo.CreateSpecificCulture("hu-HU")))
' Displays 06:09:01 du.
date1 = New Date(2008, 1, 1, 18, 9, 1, 500)
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01.50 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", _
                  CultureInfo.CreateSpecificCulture("hu-HU")))
' Displays 06:09:01.50 du.
DateTime date1; 
date1 = new DateTime(2008, 1, 1, 18, 9, 1);
Console.WriteLine(date1.ToString("hh:mm:ss tt", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss tt", 
                  CultureInfo.CreateSpecificCulture("hu-HU")));
// Displays 06:09:01 du.
date1 = new DateTime(2008, 1, 1, 18, 9, 1, 500);
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01.50 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", 
                  CultureInfo.CreateSpecificCulture("hu-HU")));
// Displays 06:09:01.50 du.

Torna alla tabella

Identificatore di formato personalizzato "H"

L'identificatore di formato personalizzato "H" rappresenta l'ora come numero compreso tra 0 e 23, ovvero l'ora rappresentata nell'orario in formato 24 ore a base zero in base al quale il conteggio riparte da mezzanotte. Un'ora costituita da una singola cifra viene formattata senza zero iniziale.

Se l'identificatore di formato "H" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard e viene generato un evento FormatException. Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "H" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #6:09:01AM#
Console.WriteLine(date1.ToString("H:mm:ss", _
                  CultureInfo.InvariantCulture))
' Displays 6:09:01                        
DateTime date1 = new DateTime(2008, 1, 1, 6, 9, 1);
Console.WriteLine(date1.ToString("H:mm:ss", 
                  CultureInfo.InvariantCulture));
// Displays 6:09:01              

Torna alla tabella

Identificatore di formato personalizzato "HH"

L'identificatore di formato personalizzato "HH" (più qualsiasi numero di identificatori "H" aggiuntivi) rappresenta l'ora come numero compreso tra 00 e 23, ovvero l'ora rappresentata nell'orario in formato 24 ore a base zero in base al quale il conteggio riparte da mezzanotte. Un'ora costituita da una singola cifra viene formattata con uno zero iniziale.

Nell'esempio seguente l'identificatore di formato personalizzato "HH" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #6:09:01AM#
Console.WriteLine(date1.ToString("HH:mm:ss", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01                        
DateTime date1 = new DateTime(2008, 1, 1, 6, 9, 1);
Console.WriteLine(date1.ToString("HH:mm:ss", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01                        

Torna alla tabella

Identificatore di formato personalizzato "K"

L'identificatore di formato personalizzato "K" rappresenta le informazioni sul fuso orario di un valore di data e ora. Quando questo identificatore di formato viene utilizzato con valori DateTime, la stringa di risultato viene definita dal valore della proprietà DateTime.Kind:

  • Per il fuso orario locale (un valore della proprietà DateTime.Kind uguale a DateTimeKind.Local) questo identificatore è equivalente all'identificatore "zzz" e genera una stringa di risultato che contiene l'offset locale rispetto all'ora UTC (Coordinated Universal Time), ad esempio "-07.00".

  • Per un'ora UTC (un valore della proprietà DateTime.Kind uguale a DateTimeKind.Utc) la stringa di risultato include un carattere "Z" per rappresentare una data UTC.

  • Per un'ora di un fuso orario non specificato (un'ora la cui proprietà DateTime.Kind è uguale a DateTimeKind.Unspecified) il risultato è equivalente a String.Empty.

Per i valori DateTimeOffset, l'identificatore di formato "K" è equivalente all'identificatore di formato "zz" e genera una stringa di risultato che contiene l'offset del valore DateTimeOffset rispetto a UTC.

Se l'identificatore di formato "K" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard e viene generato un evento FormatException. Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente viene visualizzata la stringa risultante dall'utilizzo dell'identificatore di formato personalizzato "K" con vari valori DateTime e DateTimeOffset in un sistema nel fuso orario Pacifico (Stati Uniti).

Console.WriteLine(Date.Now.ToString("%K"))
' Displays -07:00
Console.WriteLine(Date.UtcNow.ToString("%K"))
' Displays Z      
Console.WriteLine("'{0}'", _
                  Date.SpecifyKind(Date.Now, _
                                   DateTimeKind.Unspecified). _
                  ToString("%K"))
' Displays ''      
Console.WriteLine(DateTimeOffset.Now.ToString("%K"))
' Displays -07:00
Console.WriteLine(DateTimeOffset.UtcNow.ToString("%K"))
' Displays +00:00
Console.WriteLine(New DateTimeOffset(2008, 5, 1, 6, 30, 0, _
                                     New TimeSpan(5, 0, 0)). _
                  ToString("%K"))
' Displays +05:00                        
Console.WriteLine(DateTime.Now.ToString("%K"));
// Displays -07:00
Console.WriteLine(DateTime.UtcNow.ToString("%K"));
// Displays Z      
Console.WriteLine("'{0}'", 
                  DateTime.SpecifyKind(DateTime.Now, 
                       DateTimeKind.Unspecified).ToString("%K"));
// Displays ''      
Console.WriteLine(DateTimeOffset.Now.ToString("%K"));
// Displays -07:00
Console.WriteLine(DateTimeOffset.UtcNow.ToString("%K"));
// Displays +00:00
Console.WriteLine(new DateTimeOffset(2008, 5, 1, 6, 30, 0, 
                      new TimeSpan(5, 0, 0)).ToString("%K"));
// Displays +05:00                        

Torna alla tabella

Identificatore di formato personalizzato "m"

L'identificatore di formato personalizzato "m" rappresenta i minuti come numero compreso tra 0 e 59. Tali minuti rappresentano il numero intero di minuti passati dall'ultima ora. Un minuto costituito da una singola cifra viene formattato senza zero iniziale.

Se l'identificatore di formato "m" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard "m". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "m" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date 
date1 = #6:09:01PM#
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.InvariantCulture))
' Displays 6:9:1 P
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.CreateSpecificCulture("el-GR")))
' Displays 6:9:1 µ                        
date1 = New Date(2008, 1, 1, 18, 9, 1, 500)
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.InvariantCulture))
' Displays 6:9:1.5 P
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.CreateSpecificCulture("el-GR")))
' Displays 6:9:1.5 µ
DateTime date1; 
date1 = new DateTime(2008, 1, 1, 18, 9, 1);
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.InvariantCulture));
// Displays 6:9:1 P
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.CreateSpecificCulture("el-GR")));
// Displays 6:9:1 µ                        
date1 = new DateTime(2008, 1, 1, 18, 9, 1, 500);
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.InvariantCulture));
// Displays 6:9:1.5 P
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.CreateSpecificCulture("el-GR")));
// Displays 6:9:1.5 µ

Torna alla tabella

Identificatore di formato personalizzato "mm"

L'identificatore di formato personalizzato "mm" (più qualsiasi numero di identificatori "m" aggiuntivi) rappresenta i minuti come numero compreso tra 00 e 59. Tali minuti rappresentano il numero intero di minuti passati dall'ultima ora. Un minuto costituito da una singola cifra viene formattato con uno zero iniziale.

Nell'esempio seguente l'identificatore di formato personalizzato "mm" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date 
date1 = #6:09:01PM#
Console.WriteLine(date1.ToString("hh:mm:ss tt", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss tt", _
                  CultureInfo.CreateSpecificCulture("hu-HU")))
' Displays 06:09:01 du.
date1 = New Date(2008, 1, 1, 18, 9, 1, 500)
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01.50 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", _
                  CultureInfo.CreateSpecificCulture("hu-HU")))
' Displays 06:09:01.50 du.
DateTime date1; 
date1 = new DateTime(2008, 1, 1, 18, 9, 1);
Console.WriteLine(date1.ToString("hh:mm:ss tt", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss tt", 
                  CultureInfo.CreateSpecificCulture("hu-HU")));
// Displays 06:09:01 du.
date1 = new DateTime(2008, 1, 1, 18, 9, 1, 500);
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01.50 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", 
                  CultureInfo.CreateSpecificCulture("hu-HU")));
// Displays 06:09:01.50 du.

Torna alla tabella

Identificatore di formato personalizzato "M"

L'identificatore di formato personalizzato "M" rappresenta il mese come numero compreso tra 1 e 12 (o tra 1 e 13 per i calendari con 13 mesi). Un mese a una sola cifra viene formattato senza uno zero iniziale.

Se l'identificatore di formato "M" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard "M". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "M" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #8/18/2008#
Console.WriteLine(date1.ToString("(M) MMM, MMMM", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays (8) Aug, August
Console.WriteLine(date1.ToString("(M) MMM, MMMM", _
                  CultureInfo.CreateSpecificCulture("nl-NL")))                        
' Displays (8) aug, augustus
Console.WriteLine(date1.ToString("(M) MMM, MMMM", _
                  CultureInfo.CreateSpecificCulture("lv-LV")))                        
' Displays (8) Aug, augusts                       
DateTime date1 = new DateTime(2008, 8, 18);
Console.WriteLine(date1.ToString("(M) MMM, MMMM", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays (8) Aug, August
Console.WriteLine(date1.ToString("(M) MMM, MMMM", 
                  CultureInfo.CreateSpecificCulture("nl-NL")));                       
// Displays (8) aug, augustus
Console.WriteLine(date1.ToString("(M) MMM, MMMM", 
                  CultureInfo.CreateSpecificCulture("lv-LV")));                        
// Displays (8) Aug, augusts                       

Torna alla tabella

Identificatore di formato personalizzato "MM"

L'identificatore di formato personalizzato "MM" rappresenta il mese come numero compreso tra 01 e 12 (o tra 1 e 13 per i calendari con 13 mesi). Un mese a una sola cifra viene formattato con uno zero iniziale.

Nell'esempio seguente l'identificatore di formato personalizzato "MM" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #1/2/2008 6:30:15AM#

Console.WriteLine(date1.ToString("dd, MM", _
                  CultureInfo.InvariantCulture)) 
' 02, 01
DateTime date1 = new DateTime(2008, 1, 2, 6, 30, 15);

Console.WriteLine(date1.ToString("dd, MM", 
                  CultureInfo.InvariantCulture)); 
// 02, 01

Torna alla tabella

Identificatore di formato personalizzato "MMM"

L'identificatore di formato personalizzato "MMM" rappresenta il nome abbreviato del mese. Il nome abbreviato localizzato del mese viene recuperato dalla proprietà DateTimeFormatInfo.AbbreviatedMonthNames delle impostazioni cultura correnti o specificate.

Nell'esempio seguente l'identificatore di formato personalizzato "MMM" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #08/29/2008 7:27:15PM#

Console.WriteLine(date1.ToString("ddd d MMM", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays Fri 29 Aug
Console.WriteLine(date1.ToString("ddd d MMM", _
                  CultureInfo.CreateSpecificCulture("fr-FR")))
' Displays ven. 29 août                                                
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15);

Console.WriteLine(date1.ToString("ddd d MMM", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays Fri 29 Aug
Console.WriteLine(date1.ToString("ddd d MMM", 
                  CultureInfo.CreateSpecificCulture("fr-FR")));
// Displays ven. 29 août                                                

Torna alla tabella

Identificatore di formato personalizzato "MMMM"

L'identificatore di formato personalizzato "MMMM" rappresenta il nome completo del mese. Il nome localizzato del mese viene recuperato dalla proprietà DateTimeFormatInfo.MonthNames delle impostazioni cultura correnti o specificate.

Nell'esempio seguente l'identificatore di formato personalizzato "MMMM" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #08/29/2008 7:27:15PM#

Console.WriteLine(date1.ToString("dddd dd MMMM", _
                  CultureInfo.CreateSpecificCulture("en-US")))
' Displays Friday 29 August
Console.WriteLine(date1.ToString("dddd dd MMMM", _
                  CultureInfo.CreateSpecificCulture("it-IT")))
' Displays venerdì 29 agosto                                          
DateTime date1 = new DateTime(2008, 8, 29, 19, 27, 15);

Console.WriteLine(date1.ToString("dddd dd MMMM", 
                  CultureInfo.CreateSpecificCulture("en-US")));
// Displays Friday 29 August
Console.WriteLine(date1.ToString("dddd dd MMMM", 
                  CultureInfo.CreateSpecificCulture("it-IT")));
// Displays venerdì 29 agosto                                

Torna alla tabella

Identificatore di formato personalizzato "s"

L'identificatore di formato personalizzato "s" rappresenta i secondi come numero compreso tra 0 e 59. Il risultato rappresenta il numero intero di secondi passati dall'ultimo minuto. Un secondo costituito da una singola cifra viene formattato senza zero iniziale.

Se l'identificatore di formato "s" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard "s". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "s" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date 
date1 = #6:09:01PM#
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.InvariantCulture))
' Displays 6:9:1 P
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.CreateSpecificCulture("el-GR")))
' Displays 6:9:1 µ                        
date1 = New Date(2008, 1, 1, 18, 9, 1, 500)
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.InvariantCulture))
' Displays 6:9:1.5 P
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.CreateSpecificCulture("el-GR")))
' Displays 6:9:1.5 µ
DateTime date1; 
date1 = new DateTime(2008, 1, 1, 18, 9, 1);
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.InvariantCulture));
// Displays 6:9:1 P
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.CreateSpecificCulture("el-GR")));
// Displays 6:9:1 µ                        
date1 = new DateTime(2008, 1, 1, 18, 9, 1, 500);
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.InvariantCulture));
// Displays 6:9:1.5 P
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.CreateSpecificCulture("el-GR")));
// Displays 6:9:1.5 µ

Torna alla tabella

Identificatore di formato personalizzato "ss"

L'identificatore di formato personalizzato "ss" (più qualsiasi numero di identificatori "s" aggiuntivi) rappresenta i secondi come numero compreso tra 00 e 59. Il risultato rappresenta il numero intero di secondi passati dall'ultimo minuto. Un secondo costituito da una singola cifra viene formattato con uno zero iniziale.

Nell'esempio seguente l'identificatore di formato personalizzato "ss" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date 
date1 = #6:09:01PM#
Console.WriteLine(date1.ToString("hh:mm:ss tt", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss tt", _
                  CultureInfo.CreateSpecificCulture("hu-HU")))
' Displays 06:09:01 du.
date1 = New Date(2008, 1, 1, 18, 9, 1, 500)
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01.50 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", _
                  CultureInfo.CreateSpecificCulture("hu-HU")))
' Displays 06:09:01.50 du.
DateTime date1; 
date1 = new DateTime(2008, 1, 1, 18, 9, 1);
Console.WriteLine(date1.ToString("hh:mm:ss tt", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss tt", 
                  CultureInfo.CreateSpecificCulture("hu-HU")));
// Displays 06:09:01 du.
date1 = new DateTime(2008, 1, 1, 18, 9, 1, 500);
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01.50 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", 
                  CultureInfo.CreateSpecificCulture("hu-HU")));
// Displays 06:09:01.50 du.

Torna alla tabella

Identificatore di formato personalizzato "t"

L'identificatore di formato personalizzato "t" rappresenta il primo carattere dell'indicatore AM/PM. L'indicatore localizzato appropriato viene recuperato dalla proprietà DateTimeFormatInfo.AMDesignator o DateTimeFormatInfo.PMDesignator delle impostazioni cultura correnti o specificate. L'indicatore AM viene utilizzato per tutti gli orari da 0:00:00 (mezzanotte) a 11:59:59.999. L'indicatore PM viene utilizzato per tutti gli orari da 12:00:00 (mezzogiorno) a 23:59:59.99.

Se l'identificatore di formato "t" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard "t". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "t" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date 
date1 = #6:09:01PM#
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.InvariantCulture))
' Displays 6:9:1 P
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.CreateSpecificCulture("el-GR")))
' Displays 6:9:1 µ                        
date1 = New Date(2008, 1, 1, 18, 9, 1, 500)
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.InvariantCulture))
' Displays 6:9:1.5 P
Console.WriteLine(date1.ToString("h:m:s.F t", _
                  CultureInfo.CreateSpecificCulture("el-GR")))
' Displays 6:9:1.5 µ
DateTime date1; 
date1 = new DateTime(2008, 1, 1, 18, 9, 1);
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.InvariantCulture));
// Displays 6:9:1 P
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.CreateSpecificCulture("el-GR")));
// Displays 6:9:1 µ                        
date1 = new DateTime(2008, 1, 1, 18, 9, 1, 500);
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.InvariantCulture));
// Displays 6:9:1.5 P
Console.WriteLine(date1.ToString("h:m:s.F t", 
                  CultureInfo.CreateSpecificCulture("el-GR")));
// Displays 6:9:1.5 µ

Torna alla tabella

Identificatore di formato personalizzato "tt"

L'identificatore di formato personalizzato "tt" (più qualsiasi numero di identificatori "t" aggiuntivi) rappresenta l'indicatore AM/PM completo. L'indicatore localizzato appropriato viene recuperato dalla proprietà DateTimeFormatInfo.AMDesignator o DateTimeFormatInfo.PMDesignator delle impostazioni cultura correnti o specificate. L'indicatore AM viene utilizzato per tutti gli orari da 0:00:00 (mezzanotte) a 11:59:59.999. L'indicatore PM viene utilizzato per tutti gli orari da 12:00:00 (mezzogiorno) a 23:59:59.99.

Assicurarsi di utilizzare l'identificatore "tt" per le lingue per le quali è necessario mantenere la distinzione tra AM e PM. Un esempio è la lingua giapponese per cui gli indicatori AM e PM differiscono in corrispondenza del secondo carattere anziché del primo.

Nell'esempio seguente l'identificatore di formato personalizzato "tt" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date 
date1 = #6:09:01PM#
Console.WriteLine(date1.ToString("hh:mm:ss tt", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss tt", _
                  CultureInfo.CreateSpecificCulture("hu-HU")))
' Displays 06:09:01 du.
date1 = New Date(2008, 1, 1, 18, 9, 1, 500)
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", _
                  CultureInfo.InvariantCulture))
' Displays 06:09:01.50 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", _
                  CultureInfo.CreateSpecificCulture("hu-HU")))
' Displays 06:09:01.50 du.
DateTime date1; 
date1 = new DateTime(2008, 1, 1, 18, 9, 1);
Console.WriteLine(date1.ToString("hh:mm:ss tt", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss tt", 
                  CultureInfo.CreateSpecificCulture("hu-HU")));
// Displays 06:09:01 du.
date1 = new DateTime(2008, 1, 1, 18, 9, 1, 500);
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", 
                  CultureInfo.InvariantCulture));
// Displays 06:09:01.50 PM                        
Console.WriteLine(date1.ToString("hh:mm:ss.ff tt", 
                  CultureInfo.CreateSpecificCulture("hu-HU")));
// Displays 06:09:01.50 du.

Torna alla tabella

Identificatore di formato personalizzato "y"

L'identificatore di formato personalizzato "y" rappresenta l'anno come numero a una cifra o a due cifre. Se l'anno ha più di due cifre, nel risultato vengono visualizzate solo le due cifre di ordine inferiore. Se la prima cifra di un anno a due cifre inizia con zero (ad esempio, 2008), il numero viene formattato senza zero iniziale.

Se l'identificatore di formato "y" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard "y". Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "y" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #12/1/0001#
Dim date2 As Date = #1/1/2010#
Console.WriteLine(date1.ToString("%y"))
' Displays 1
Console.WriteLine(date1.ToString("yy"))
' Displays 01
Console.WriteLine(date1.ToString("yyy"))
' Displays 001
Console.WriteLine(date1.ToString("yyyy"))
' Displays 0001
Console.WriteLine(date1.ToString("yyyyy"))
' Displays 00001
Console.WriteLine(date2.ToString("%y"))
' Displays 10
Console.WriteLine(date2.ToString("yy"))
' Displays 10
Console.WriteLine(date2.ToString("yyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"))
' Displays 02010      
DateTime date1 = new DateTime(1, 12, 1);
DateTime date2 = new DateTime(2010, 1, 1);
Console.WriteLine(date1.ToString("%y"));
// Displays 1
Console.WriteLine(date1.ToString("yy"));
// Displays 01
Console.WriteLine(date1.ToString("yyy"));
// Displays 001
Console.WriteLine(date1.ToString("yyyy"));
// Displays 0001
Console.WriteLine(date1.ToString("yyyyy"));
// Displays 00001
Console.WriteLine(date2.ToString("%y"));
// Displays 10
Console.WriteLine(date2.ToString("yy"));
// Displays 10
Console.WriteLine(date2.ToString("yyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"));
// Displays 02010      

Torna alla tabella

Identificatore di formato personalizzato "yy"

L'identificatore di formato personalizzato "yy" rappresenta l'anno come numero a due cifre. Se l'anno ha più di due cifre, nel risultato vengono visualizzate solo le due cifre di ordine inferiore. Se l'anno a due cifre ha meno di due cifre significative, al numero vengono anteposti tanti zeri quanti sono necessari per ottenere due cifre.

Nell'esempio seguente l'identificatore di formato personalizzato "yy" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #12/1/0001#
Dim date2 As Date = #1/1/2010#
Console.WriteLine(date1.ToString("%y"))
' Displays 1
Console.WriteLine(date1.ToString("yy"))
' Displays 01
Console.WriteLine(date1.ToString("yyy"))
' Displays 001
Console.WriteLine(date1.ToString("yyyy"))
' Displays 0001
Console.WriteLine(date1.ToString("yyyyy"))
' Displays 00001
Console.WriteLine(date2.ToString("%y"))
' Displays 10
Console.WriteLine(date2.ToString("yy"))
' Displays 10
Console.WriteLine(date2.ToString("yyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"))
' Displays 02010      
DateTime date1 = new DateTime(1, 12, 1);
DateTime date2 = new DateTime(2010, 1, 1);
Console.WriteLine(date1.ToString("%y"));
// Displays 1
Console.WriteLine(date1.ToString("yy"));
// Displays 01
Console.WriteLine(date1.ToString("yyy"));
// Displays 001
Console.WriteLine(date1.ToString("yyyy"));
// Displays 0001
Console.WriteLine(date1.ToString("yyyyy"));
// Displays 00001
Console.WriteLine(date2.ToString("%y"));
// Displays 10
Console.WriteLine(date2.ToString("yy"));
// Displays 10
Console.WriteLine(date2.ToString("yyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"));
// Displays 02010      

Torna alla tabella

Identificatore di formato personalizzato "yyy"

L'identificatore di formato personalizzato "yyy" rappresenta l'anno con un minimo di tre cifre. Se l'anno ha più di tre cifre significative, queste vengono incluse nella stringa di risultato. Se l'anno ha meno di tre cifre, al numero vengono anteposti tanti zeri quanti sono necessari per ottenere tre cifre.

NotaNota

Per il calendario buddista tailandese, in cui sono previsti anni di cinque cifre, questo identificatore di formato consente di visualizzare tutte le cifre significative.

Nell'esempio seguente l'identificatore di formato personalizzato "yyy" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #12/1/0001#
Dim date2 As Date = #1/1/2010#
Console.WriteLine(date1.ToString("%y"))
' Displays 1
Console.WriteLine(date1.ToString("yy"))
' Displays 01
Console.WriteLine(date1.ToString("yyy"))
' Displays 001
Console.WriteLine(date1.ToString("yyyy"))
' Displays 0001
Console.WriteLine(date1.ToString("yyyyy"))
' Displays 00001
Console.WriteLine(date2.ToString("%y"))
' Displays 10
Console.WriteLine(date2.ToString("yy"))
' Displays 10
Console.WriteLine(date2.ToString("yyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"))
' Displays 02010      
DateTime date1 = new DateTime(1, 12, 1);
DateTime date2 = new DateTime(2010, 1, 1);
Console.WriteLine(date1.ToString("%y"));
// Displays 1
Console.WriteLine(date1.ToString("yy"));
// Displays 01
Console.WriteLine(date1.ToString("yyy"));
// Displays 001
Console.WriteLine(date1.ToString("yyyy"));
// Displays 0001
Console.WriteLine(date1.ToString("yyyyy"));
// Displays 00001
Console.WriteLine(date2.ToString("%y"));
// Displays 10
Console.WriteLine(date2.ToString("yy"));
// Displays 10
Console.WriteLine(date2.ToString("yyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"));
// Displays 02010      

Torna alla tabella

Identificatore di formato personalizzato "yyyy"

L'identificatore di formato personalizzato "yyyy" rappresenta l'anno con un minimo di quattro cifre. Se l'anno ha più di quattro cifre significative, queste vengono incluse nella stringa di risultato. Se l'anno ha meno di quattro cifre, al numero vengono anteposti tanti zeri quanti sono necessari per ottenere quattro cifre.

NotaNota

Per il calendario buddista tailandese, in cui sono previsti anni di cinque cifre, questo identificatore di formato visualizza un minimo di quattro cifre.

Nell'esempio seguente l'identificatore di formato personalizzato "yyyy" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #12/1/0001#
Dim date2 As Date = #1/1/2010#
Console.WriteLine(date1.ToString("%y"))
' Displays 1
Console.WriteLine(date1.ToString("yy"))
' Displays 01
Console.WriteLine(date1.ToString("yyy"))
' Displays 001
Console.WriteLine(date1.ToString("yyyy"))
' Displays 0001
Console.WriteLine(date1.ToString("yyyyy"))
' Displays 00001
Console.WriteLine(date2.ToString("%y"))
' Displays 10
Console.WriteLine(date2.ToString("yy"))
' Displays 10
Console.WriteLine(date2.ToString("yyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"))
' Displays 02010      
DateTime date1 = new DateTime(1, 12, 1);
DateTime date2 = new DateTime(2010, 1, 1);
Console.WriteLine(date1.ToString("%y"));
// Displays 1
Console.WriteLine(date1.ToString("yy"));
// Displays 01
Console.WriteLine(date1.ToString("yyy"));
// Displays 001
Console.WriteLine(date1.ToString("yyyy"));
// Displays 0001
Console.WriteLine(date1.ToString("yyyyy"));
// Displays 00001
Console.WriteLine(date2.ToString("%y"));
// Displays 10
Console.WriteLine(date2.ToString("yy"));
// Displays 10
Console.WriteLine(date2.ToString("yyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"));
// Displays 02010      

Torna alla tabella

Identificatore di formato personalizzato "yyyyy"

L'identificatore di formato personalizzato "yyyyy" (più qualsiasi numero di identificatori "y" aggiuntivi) rappresenta l'anno con un minimo di cinque cifre. Se l'anno ha più di cinque cifre significative, queste vengono incluse nella stringa di risultato. Se l'anno ha meno di cinque cifre, al numero vengono anteposti tanti zeri quanto sono necessari per ottenere cinque cifre.

Se sono presenti identificatori "y" aggiuntivi, al numero vengono anteposti tanti zeri quanti sono necessari per ottenere il numero di identificatori "y".

Nell'esempio seguente l'identificatore di formato personalizzato "yyyyy" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = #12/1/0001#
Dim date2 As Date = #1/1/2010#
Console.WriteLine(date1.ToString("%y"))
' Displays 1
Console.WriteLine(date1.ToString("yy"))
' Displays 01
Console.WriteLine(date1.ToString("yyy"))
' Displays 001
Console.WriteLine(date1.ToString("yyyy"))
' Displays 0001
Console.WriteLine(date1.ToString("yyyyy"))
' Displays 00001
Console.WriteLine(date2.ToString("%y"))
' Displays 10
Console.WriteLine(date2.ToString("yy"))
' Displays 10
Console.WriteLine(date2.ToString("yyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyy"))
' Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"))
' Displays 02010      
DateTime date1 = new DateTime(1, 12, 1);
DateTime date2 = new DateTime(2010, 1, 1);
Console.WriteLine(date1.ToString("%y"));
// Displays 1
Console.WriteLine(date1.ToString("yy"));
// Displays 01
Console.WriteLine(date1.ToString("yyy"));
// Displays 001
Console.WriteLine(date1.ToString("yyyy"));
// Displays 0001
Console.WriteLine(date1.ToString("yyyyy"));
// Displays 00001
Console.WriteLine(date2.ToString("%y"));
// Displays 10
Console.WriteLine(date2.ToString("yy"));
// Displays 10
Console.WriteLine(date2.ToString("yyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyy"));
// Displays 2010      
Console.WriteLine(date2.ToString("yyyyy"));
// Displays 02010      

Torna alla tabella

Identificatore di formato personalizzato "z"

Con valori DateTime, l'identificatore di formato personalizzato "z" rappresenta l'offset con segno del fuso orario del sistema operativo locale rispetto a UTC (Coordinated Universal Time), misurato in ore. Non riflette il valore della proprietà DateTime.Kind di un'istanza. Per questo motivo non è consigliabile utilizzare l'identificatore di formato "z" con valori DateTime.

Con valori DateTimeOffset, questo identificatore di formato rappresenta l'offset del valore DateTimeOffset rispetto a UTC, in ore.

Lo scarto viene visualizzato sempre con un segno iniziale. Un segno più (+) indica le ore in più e un segno meno (-) le ore in meno rispetto all'ora UTC. Un valore di offset a una sola cifra viene formattato senza uno zero iniziale.

Se l'identificatore di formato "z" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard e viene generato un evento FormatException. Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Nell'esempio seguente l'identificatore di formato personalizzato "z" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = Date.UtcNow
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", _
                  date1))
' Displays -7, -07, -07:00                     

Dim date2 As New DateTimeOffset(2008, 8, 1, 0, 0, 0, _
                                New Timespan(6, 0, 0))
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", _
                  date2))                                     
' Displays +6, +06, +06:00
DateTime date1 = DateTime.UtcNow;
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", 
                  date1));
// Displays -7, -07, -07:00                     

DateTimeOffset date2 = new DateTimeOffset(2008, 8, 1, 0, 0, 0, 
                                          new TimeSpan(6, 0, 0));
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", 
                  date2));
// Displays +6, +06, +06:00

Torna alla tabella

Identificatore di formato personalizzato "zz"

Con valori DateTime, l'identificatore di formato personalizzato "zz" rappresenta l'offset con segno del fuso orario del sistema operativo locale rispetto a UTC, misurato in ore. Non riflette il valore della proprietà DateTime.Kind di un'istanza. Per questo motivo, non è consigliabile utilizzare l'identificatore di formato "zz" con valori DateTime.

Con valori DateTimeOffset, questo identificatore di formato rappresenta l'offset del valore DateTimeOffset rispetto a UTC, in ore.

Lo scarto viene visualizzato sempre con un segno iniziale. Un segno più (+) indica le ore in più e un segno meno (-) le ore in meno rispetto all'ora UTC. Un valore di offset di una sola cifra viene formattato con uno zero iniziale.

Nell'esempio seguente l'identificatore di formato personalizzato "zz" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = Date.UtcNow
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", _
                  date1))
' Displays -7, -07, -07:00                     

Dim date2 As New DateTimeOffset(2008, 8, 1, 0, 0, 0, _
                                New Timespan(6, 0, 0))
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", _
                  date2))                                     
' Displays +6, +06, +06:00
DateTime date1 = DateTime.UtcNow;
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", 
                  date1));
// Displays -7, -07, -07:00                     

DateTimeOffset date2 = new DateTimeOffset(2008, 8, 1, 0, 0, 0, 
                                          new TimeSpan(6, 0, 0));
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", 
                  date2));
// Displays +6, +06, +06:00

Torna alla tabella

Identificatore di formato personalizzato "zzz"

Con valori DateTime, l'identificatore di formato personalizzato "zzz" rappresenta l'offset con segno del fuso orario del sistema operativo locale rispetto a UTC, misurato in ore e minuti. Non riflette il valore della proprietà DateTime.Kind di un'istanza. Per questo motivo, non è consigliabile utilizzare l'identificatore di formato "zzz" con valori DateTime.

Con valori DateTimeOffset, questo identificatore di formato rappresenta l'offset del valore DateTimeOffset rispetto a UTC, in ore e minuti.

Lo scarto viene visualizzato sempre con un segno iniziale. Un segno più (+) indica le ore in più e un segno meno (-) le ore in meno rispetto all'ora UTC. Un valore di offset di una sola cifra viene formattato con uno zero iniziale.

Nell'esempio seguente l'identificatore di formato personalizzato "zzz" viene incluso in una stringa di formato personalizzata.

Dim date1 As Date = Date.UtcNow
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", _
                  date1))
' Displays -7, -07, -07:00                     

Dim date2 As New DateTimeOffset(2008, 8, 1, 0, 0, 0, _
                                New Timespan(6, 0, 0))
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", _
                  date2))                                     
' Displays +6, +06, +06:00
DateTime date1 = DateTime.UtcNow;
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", 
                  date1));
// Displays -7, -07, -07:00                     

DateTimeOffset date2 = new DateTimeOffset(2008, 8, 1, 0, 0, 0, 
                                          new TimeSpan(6, 0, 0));
Console.WriteLine(String.Format("{0:%z}, {0:zz}, {0:zzz}", 
                  date2));
// Displays +6, +06, +06:00

Torna alla tabella

Identificatore di formato personalizzato ":"

L'identificatore di formato personalizzato ":" rappresenta il separatore di ora che viene utilizzato per distinguere ore, minuti e secondi. Il separatore di ora localizzato appropriato viene recuperato dalla proprietà DateTimeFormatInfo.TimeSeparator delle impostazioni cultura correnti o specificate.

Se l'identificatore di formato ":" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard e viene generato un evento FormatException. Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Torna alla tabella

Identificatore di formato personalizzato "/"

L'identificatore di formato personalizzato "/" rappresenta il separatore di data che viene utilizzato per distinguere anni, mesi e giorni. Il separatore di data localizzato appropriato viene recuperato dalla proprietà DateTimeFormatInfo.DateSeparator delle impostazioni cultura correnti o specificate.

Se l'identificatore di formato "/" viene utilizzato senza altri identificatori di formato personalizzati, viene interpretato come l'identificatore di formato di data e ora standard e viene generato un evento FormatException. Per ulteriori informazioni sull'utilizzo di un singolo identificatore di formato, vedere Utilizzo di singoli identificatori di formato personalizzati, più avanti in questo argomento.

Torna alla tabella

Note

Utilizzo di singoli identificatori di formato personalizzati

Una stringa di formato di data e ora personalizzata è costituita da due o più caratteri. I metodi di formattazione di data e ora interpretano qualsiasi stringa a carattere singolo come stringa di formato di data e ora standard. Se il carattere non viene riconosciuto come identificatore di formato valido, viene generato un evento FormatException. Una stringa di formato costituita solo dall'identificatore "h" viene ad esempio interpretata come una stringa di formato di data e ora standard. In questo caso specifico, tuttavia, viene generata un'eccezione in quanto non vi è alcun identificatore di formato di data e ora standard "h".

Per utilizzare qualsiasi identificatore di formato di data e ora personalizzato come unico identificatore in una stringa di formato (ovvero, per utilizzare l'identificatore di formato personalizzato "d", "f", "F", "g", "h", "H", "K", "m", "M", "s", "t", "y", "z", ":" o "/" da solo), includere uno spazio prima o dopo l'identificatore oppure includere un identificatore di formato percentuale ("%") prima del singolo identificatore di data e ora personalizzato.

La stringa %h" viene ad esempio interpretata come una stringa di formato di data e ora personalizzata che consente di visualizzare l'ora rappresentata dal valore di data e ora corrente. È anche possibile utilizzare la stringa di formato " h" o "h ", sebbene, in questo caso, verrà incluso uno spazio nella stringa di risultato insieme all'ora. Nell'esempio seguente vengono illustrate queste tre stringhe di formato.

Dim dat1 As Date = #6/15/2009 1:45PM#

Console.WriteLine("'{0:%h}'", dat1)
Console.WriteLine("'{0: h}'", dat1)
Console.WriteLine("'{0:h }'", dat1)
' The example displays the following output:
'       '1'
'       ' 1'
'       '1 '
DateTime dat1 = new DateTime(2009, 6, 15, 13, 45, 0);

Console.WriteLine("'{0:%h}'", dat1);
Console.WriteLine("'{0: h}'", dat1);
Console.WriteLine("'{0:h }'", dat1);
// The example displays the following output:
//       '1'
//       ' 1'
//       '1 '

Utilizzo del carattere di escape

I caratteri "d", "f", "F", "g", "h", "H", "K", "m", "M", "s", "t", "y", "z", ":" o "/" in una stringa di formato vengono interpretati come identificatori di formato personalizzati anziché come caratteri letterali. Per impedire che un carattere venga interpretato come un identificatore di formato, è possibile anteporvi una barra rovesciata (\), che rappresenta il carattere di escape. Il carattere di escape indica che il carattere seguente è un valore letterale carattere che deve essere incluso nella stringa di risultato senza modifiche.

Per includere una barra rovesciata in una stringa di risultato, è necessario utilizzare un carattere di escape per tale elemento, facendolo quindi precedere da un'altra barra rovesciata (\\).

NotaNota

Alcuni compilatori, ad esempio i compilatori C++ e C#, possono anche interpretare un singolo carattere barra rovesciata come carattere di escape.Per assicurarsi che una stringa venga interpretata correttamente quando viene eseguita la formattazione, è possibile utilizzare il carattere del valore letterale stringa letterale (carattere @) prima della stringa in C# o aggiungere un altro carattere barra rovesciata prima di ogni barra rovesciata in C# e C++.Nell'esempio C# seguente vengono illustrati entrambi gli approcci.

Nell'esempio seguente viene utilizzato il carattere di escape per impedire che durante l'operazione di formattazione i caratteri "h" e "m" vengano interpretati come identificatori di formato.

Dim date1 As Date = #6/15/2009 13:45#
Dim fmt As String = "h \h m \m"

Console.WriteLine("{0} ({1}) -> {2}", date1, fmt, date1.ToString(fmt))
' The example displays the following output:
'       6/15/2009 1:45:00 PM (h \h m \m) -> 1 h 45 m      
DateTime date = new DateTime(2009, 06, 15, 13, 45, 30, 90);
string fmt1 = "h \\h m \\m";
string fmt2 = @"h \h m \m";

Console.WriteLine("{0} ({1}) -> {2}", date, fmt1, date.ToString(fmt1));
Console.WriteLine("{0} ({1}) -> {2}", date, fmt2, date.ToString(fmt2));
// The example displays the following output:
//       6/15/2009 1:45:30 PM (h \h m \m) -> 1 h 45 m
//       6/15/2009 1:45:30 PM (h \h m \m) -> 1 h 45 m      

Impostazioni del Pannello di controllo

L'impostazione Opzioni internazionali e della lingua nel Pannello di controllo influisce sulla stringa di risultato prodotta da un'operazione di formattazione che include molti degli identificatori di formato di data e ora personalizzati. Queste impostazioni vengono utilizzate per inizializzare l'oggetto DateTimeFormatInfo associato alle impostazioni cultura del thread corrente, che fornisce i valori utilizzati per definire la formattazione. Computer con impostazioni diverse generano stringhe di risultato diverse.

Se inoltre viene utilizzato il costruttore CultureInfo.CultureInfo(String) per creare un'istanza di un nuovo oggetto CultureInfo che rappresenta le stesse impostazioni cultura delle impostazioni cultura del sistema correnti, le eventuali personalizzazioni definite tramite Opzioni internazionali e della lingua nel Pannello di controllo verranno applicate al nuovo oggetto CultureInfo. È possibile utilizzare il costruttore di CultureInfo.CultureInfo(String, Boolean) per creare un oggetto CultureInfo che non rifletta le personalizzazioni di un sistema.

Proprietà DateTimeFormatInfo

La formattazione è influenzata dalle proprietà dell'oggetto DateTimeFormatInfo corrente, che viene fornito in modo implicito dalle impostazioni cultura del thread correnti o in modo esplicito dal parametro IFormatProvider del metodo che richiama la formattazione. Per il parametro IFormatProvider, è necessario specificare un oggetto CultureInfo, che rappresenta determinate impostazioni cultura, o un oggetto DateTimeFormatInfo.

La stringa di risultato prodotta da molti degli identificatori di formato di data e ora personalizzati dipende inoltre dalle proprietà dell'oggetto DateTimeFormatInfo corrente. Nell'applicazione può quindi essere modificato il risultato prodotto da alcuni identificatori di formato di data e ora personalizzati modificando la proprietà DateTimeFormatInfo corrispondente. L'identificatore di formato "ddd" aggiunge, ad esempio, un nome di giorno della settimana abbreviato trovato nella matrice di stringhe AbbreviatedDayNames alla stringa di risultato. In modo analogo, l'identificatore di formato "MMMM" aggiunge un nome di mese completo trovato nella matrice di stringhe MonthNames alla stringa di risultato.

Vedere anche

Riferimenti

System.DateTime

System.IFormatProvider

Concetti

Formattazione dei tipi di dati

Stringhe di formato di data e ora standard

Cronologia delle modifiche

Data

Cronologia

Motivo

Marzo 2011

Aggiunta di un collegamento all'utilità di formattazione.

Miglioramento delle informazioni.

Luglio 2010

Aggiunta di informazioni sull'utilizzo delle stringhe di formato personalizzate nelle operazioni di formattazione e di analisi.

Commenti e suggerimenti dei clienti.