Megosztás a következőn keresztül:


Számbavételi formátum sztringjei

A metódussal Enum.ToString létrehozhat egy új sztringobjektumot, amely az enumerálási tag numerikus, hexadecimális vagy sztringértékét jelöli. Ez a metódus az enumerálási formázási sztringek egyikével adja meg a visszaadni kívánt értéket.

A következő szakaszok felsorolják az enumerálási formázási sztringeket és az általuk visszaadott értékeket. Ezek a formátumjelölők nem megkülönböztetik a kis- és nagybetűket.

G vagy g

Ha lehetséges, sztringértékként jeleníti meg az enumerálási bejegyzést, máskülönben az aktuális példány egész számértékét jeleníti meg. Ha az enumerálás a FlagsAttribute készlettel van definiálva, az egyes érvényes bejegyzések sztringértékeinek összefűzése vesszővel történik. Ha az Flags attribútum nincs beállítva, egy érvénytelen érték jelenik meg numerikus bejegyzésként. Az alábbi példa a formátumkijelölőt G szemlélteti.

Console.WriteLine(((DayOfWeek)7).ToString("G"));      // 7
Console.WriteLine(ConsoleColor.Red.ToString("G"));    // Red

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

F vagy f

Ha lehetséges, sztringértékként jeleníti meg az enumerálási bejegyzést. Ha az érték az enumerálásban szereplő bejegyzések összegzéseként jeleníthető meg (még akkor is, ha az Flags attribútum nem létezik), az egyes érvényes bejegyzések sztringértékeit összefűzi a rendszer vesszővel elválasztva. Ha az érték nem határozható meg az enumerálási tételek alapján, akkor az érték egész számként van formázva. Az alábbi példa a formátumkijelölőt F szemlélteti.

Console.WriteLine(((DayOfWeek)7).ToString("F"));       // Monday, Saturday
Console.WriteLine(ConsoleColor.Blue.ToString("F"));    // Blue

var attributes = FileAttributes.Hidden | FileAttributes.Archive;
Console.WriteLine(attributes.ToString("F"));           // Hidden, Archive
Console.WriteLine((CType(7, DayOfWeek)).ToString("F"))    ' Monday, Saturday
Console.WriteLine(ConsoleColor.Blue.ToString("F"))        ' Blue
Dim attributes As FileAttributes = FileAttributes.Hidden Or _
                                   FileAttributes.Archive
Console.WriteLine(attributes.ToString("F"))               ' Hidden, Archive

D vagy d

Az enumerálási bejegyzést egész számként jeleníti meg a lehető legrövidebb ábrázolásban. Az alábbi példa a formátumkijelölőt D szemlélteti.

Console.WriteLine(((DayOfWeek)7).ToString("D"));       // 7
Console.WriteLine(ConsoleColor.Cyan.ToString("D"));    // 11

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

X vagy x

Hexadecimális értékként jeleníti meg az enumerálási bejegyzést. Az érték szükség szerint kezdő nullákkal van jelölve, hogy az eredménysztring két karaktert tartalmazzon az enumerálási típus alapjául szolgáló numerikus típus minden bájtjához. Az alábbi példa az X formátumkijelölőt szemlélteti. A példában a mögöttes típusú DayOfWeekés az Int32, FileAttributesConsoleColor vagy egy 32 bites (vagy 4 bájtos) egész szám, amely egy 8 karakteres eredménysztringet hoz létre.

Console.WriteLine(((DayOfWeek)7).ToString("X"));       // 00000007
Console.WriteLine(ConsoleColor.Cyan.ToString("X"));    // 0000000B

var attributes = FileAttributes.Hidden | FileAttributes.Archive;
Console.WriteLine(attributes.ToString("X"));           // 00000022
Console.WriteLine((CType(7, DayOfWeek)).ToString("X"))    ' 00000007
Console.WriteLine(ConsoleColor.Cyan.ToString("X"))        ' 0000000B
Dim attributes As FileAttributes = FileAttributes.Hidden Or _
                                   FileAttributes.Archive
Console.WriteLine(attributes.ToString("X"))               ' 00000022

Példa

Az alábbi példa egy három bejegyzésből álló enumerálást Colors határoz meg: Red, Blueés Green.

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

Az enumerálás definiálása után egy példány a következő módon deklarálható.

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

Ezután Color.ToString(System.String) a metódussal a számbavételi érték különböző módokon jeleníthető meg, attól függően, hogy milyen formátumjelölőt ad át neki.

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.      

Lásd még