Stringhe di formato di enumerazioneEnumeration format strings

È possibile usare il metodo Enum.ToString per creare un nuovo oggetto stringa che rappresenti il valore numerico, esadecimale o stringa di un membro di enumerazione.You can use the Enum.ToString method to create a new string object that represents the numeric, hexadecimal, or string value of an enumeration member. Questo metodo accetta una delle stringhe di formattazione di enumerazione per specificare il valore che si vuole venga restituito.This method takes one of the enumeration formatting strings to specify the value that you want returned.

Nella tabella che segue sono elencate le stringhe di formattazione di enumerazione e i valori da esse restituiti.The following sections list the enumeration formatting strings and the values they return. In questi identificatori di formato non viene fatta distinzione tra maiuscole e minuscole.These format specifiers are not case-sensitive.

G o gG or g

Visualizza la voce di enumerazione sotto forma di valore di stringa, se possibile; in caso contrario, visualizza il valore intero dell'istanza corrente.Displays the enumeration entry as a string value, if possible, and otherwise displays the integer value of the current instance. Se l'enumerazione viene definita con l'attributo Flags impostato, i valori di stringa di ogni voce valida vengono concatenati tra loro, separati da virgole.If the enumeration is defined with the Flags attribute set, the string values of each valid entry are concatenated together, separated by commas. Se l'attributo Flags non è impostato, verrà visualizzato un valore non valido come voce numerica.If the Flags attribute is not set, an invalid value is displayed as a numeric entry. L'esempio seguente illustra l'identificatore di formato G.The following example illustrates the G format specifier.

Console.WriteLine(ConsoleColor.Red.ToString("G"));         // Displays Red
FileAttributes attributes = FileAttributes.Hidden |
                            FileAttributes.Archive;
Console.WriteLine(attributes.ToString("G"));   // Displays Hidden, Archive                               
Console.WriteLine(ConsoleColor.Red.ToString("G"))           ' Displays Red
Dim attributes As FileAttributes = FileAttributes.Hidden Or _
                                   FileAttributes.Archive
Console.WriteLine(attributes.ToString("G"))     ' Displays Hidden, Archive                               

F o fF or f

Visualizza la voce di enumerazione come valore di stringa, se possibile.Displays the enumeration entry as a string value, if possible. Se il valore può essere visualizzato interamente come somma delle voci nell'enumerazione (anche se l'attributo Flags è assente), i valori di stringa di ogni voce valida vengono concatenati tra loro, separati da virgole.If the value can be completely displayed as a summation of the entries in the enumeration (even if the Flags attribute is not present), the string values of each valid entry are concatenated together, separated by commas. Se non è possibile determinare completamente il valore sulla base delle voci di enumerazione, il valore verrà formattato sotto forma di valore intero.If the value cannot be completely determined by the enumeration entries, then the value is formatted as the integer value. L'esempio seguente illustra l'identificatore di formato F.The following example illustrates the F format specifier.

Console.WriteLine(ConsoleColor.Blue.ToString("F"));       // Displays Blue
FileAttributes attributes = FileAttributes.Hidden | 
                            FileAttributes.Archive;
Console.WriteLine(attributes.ToString("F"));   // Displays Hidden, Archive                               
Console.WriteLine(ConsoleColor.Blue.ToString("F"))         ' Displays Blue
Dim attributes As FileAttributes = FileAttributes.Hidden Or _
                                   FileAttributes.Archive
Console.WriteLine(attributes.ToString("F"))     ' Displays Hidden, Archive                               

D o dD or d

Visualizza la voce di enumerazione come valore intero nella rappresentazione più breve possibile.Displays the enumeration entry as an integer value in the shortest representation possible. L'esempio seguente illustra l'identificatore di formato D.The following example illustrates the D format specifier.

Console.WriteLine(ConsoleColor.Cyan.ToString("D"));         // Displays 11
FileAttributes attributes = FileAttributes.Hidden |
                            FileAttributes.Archive;
Console.WriteLine(attributes.ToString("D"));                // Displays 34                               
Console.WriteLine(ConsoleColor.Cyan.ToString("D"))           ' Displays 11
Dim attributes As FileAttributes = FileAttributes.Hidden Or _
                                   FileAttributes.Archive
Console.WriteLine(attributes.ToString("D"))                  ' Displays 34                               

X o xX or x

Visualizza la voce di enumerazione come valore esadecimale.Displays the enumeration entry as a hexadecimal value. Il valore viene rappresentato con zeri inziali, se necessario, per garantire che la stringa del risultato abbia due caratteri per ogni byte nel tipo numerico sottostante del tipo di enumerazione.The value is represented with leading zeros as necessary, to ensure that the result string has two characters for each byte in the enumeration type's underlying numeric type. L'esempio seguente illustra l'identificatore di formato X.The following example illustrates the X format specifier. Nell'esempio il tipo sottostante di ConsoleColor e FileAttributes è Int32 o un numero intero a 32 bit (o 4 byte) che produce una stringa del risultato di 8 caratteri.In the example, the underlying type of both ConsoleColor and FileAttributes is Int32, or a 32-bit (or 4-byte) integer, which produces an 8-character result string.

Console.WriteLine(ConsoleColor.Cyan.ToString("X"));   // Displays 0000000B
FileAttributes attributes = FileAttributes.Hidden |
                            FileAttributes.Archive;
Console.WriteLine(attributes.ToString("X"));          // Displays 00000022                               
Console.WriteLine(ConsoleColor.Cyan.ToString("X"))     ' Displays 0000000B
Dim attributes As FileAttributes = FileAttributes.Hidden Or _
                                   FileAttributes.Archive
Console.WriteLine(attributes.ToString("X"))            ' Displays 00000022                               

EsempioExample

L'esempio seguente definisce un'enumerazione denominata Colors costituita dalle tre voci Red, Blue e Green.The following example defines an enumeration called Colors that consists of three entries: Red, Blue, and Green.

public enum Color {Red = 1, Blue = 2, Green = 3}
Public Enum Color
   Red = 1
   Blue = 2
   Green = 3
End Enum

Dopo aver definito l'enumerazione è possibile dichiararne un'istanza nel modo seguente.After the enumeration is defined, an instance can be declared in the following manner.

Color myColor = Color.Green;      
Dim myColor As Color = Color.Green      

Sarà quindi possibile usare il metodo Color.ToString(System.String) per visualizzare il valore di enumerazione in modi diversi, a seconda dell'identificatore di formato passato.The Color.ToString(System.String) method can then be used to display the enumeration value in different ways, depending on the format specifier passed to it.

Console.WriteLine("The value of myColor is {0}.", 
                  myColor.ToString("G"));
Console.WriteLine("The value of myColor is {0}.", 
                  myColor.ToString("F"));
Console.WriteLine("The value of myColor is {0}.", 
                  myColor.ToString("D"));
Console.WriteLine("The value of myColor is 0x{0}.", 
                  myColor.ToString("X"));
// The example displays the following output to the console:
//       The value of myColor is Green.
//       The value of myColor is Green.
//       The value of myColor is 3.
//       The value of myColor is 0x00000003.      
Console.WriteLine("The value of myColor is {0}.", _
                  myColor.ToString("G"))
Console.WriteLine("The value of myColor is {0}.", _
                  myColor.ToString("F"))
Console.WriteLine("The value of myColor is {0}.", _
                  myColor.ToString("D"))
Console.WriteLine("The value of myColor is 0x{0}.", _
                  myColor.ToString("X"))
' The example displays the following output to the console:
'       The value of myColor is Green.
'       The value of myColor is Green.
'       The value of myColor is 3.
'       The value of myColor is 0x00000003.      

Vedere ancheSee also