열거형 형식 문자열Enumeration format strings

Enum.ToString 메서드를 사용하여 열거형 멤버의 숫자, 16진수 또는 문자열 값을 나타내는 새 문자열 개체를 만들 수 있습니다.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. 이 메서드는 열거형 형식 문자열 중 하나를 사용하여 반환할 값을 지정합니다.This method takes one of the enumeration formatting strings to specify the value that you want returned.

다음 섹션에서는 열거형 형식 문자열과 반환되는 값을 보여 줍니다.The following sections list the enumeration formatting strings and the values they return. 이러한 형식 지정자는 대/소문자를 구분하지 않습니다.These format specifiers are not case-sensitive.

G 또는 gG or g

가능한 경우 열거형 항목을 문자열 값으로 표시하고, 가능하지 않은 경우 현재 인스턴스의 정수 값을 표시합니다.Displays the enumeration entry as a string value, if possible, and otherwise displays the integer value of the current instance. Flags 특성을 설정하여 열거형을 정의한 경우 유효한 각 항목의 문자열 값이 쉼표로 구분되어 서로 연결됩니다.If the enumeration is defined with the Flags attribute set, the string values of each valid entry are concatenated together, separated by commas. Flags 특성을 설정하지 않은 경우 잘못된 값이 숫자 항목으로 표시됩니다.If the Flags attribute is not set, an invalid value is displayed as a numeric entry. 다음 예제에서는 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 또는 fF or f

열거형 항목을 문자열 값으로 표시합니다(가능한 경우).Displays the enumeration entry as a string value, if possible. Flags 특성이 없어도 열거형 항목의 총합으로 값을 완전히 표시할 수 있는 경우 유효한 각 항목의 문자열 값이 쉼표로 구분되어 서로 연결됩니다.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. 열거형 항목으로 값을 완전히 확인할 수 없는 경우에는 값의 형식이 정수 값으로 지정됩니다.If the value cannot be completely determined by the enumeration entries, then the value is formatted as the integer value. 다음 예제에서는 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 또는 dD or d

열거형 항목을 가능한 가장 짧은 표현의 정수 값으로 표시합니다.Displays the enumeration entry as an integer value in the shortest representation possible. 다음 예제에서는 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 또는 xX or x

열거형 항목을 16진수 값으로 표시합니다.Displays the enumeration entry as a hexadecimal value. 결과 문자열이 열거형의 기본 숫자 형식에서 바이트마다 2개 문자를 갖도록 하기 위해 필요에 따라 앞에 0이 오는 값으로 표현됩니다.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. 다음 예제에서는 X 형식 지정자를 보여 줍니다.The following example illustrates the X format specifier. 예제에서 ConsoleColorFileAttributes의 기본 형식은 Int32 또는 8 글자 결과 문자열을 생성하는 32비트(또는 4바이트) 정수입니다.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                               

예제Example

다음 예제에서는 세 개의 항목 Red, BlueGreen으로 구성된 Colors라는 열거형을 정의합니다.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

열거형이 정의되면 다음과 같이 인스턴스를 선언할 수 있습니다.After the enumeration is defined, an instance can be declared in the following manner.

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

그런 다음 Color.ToString(System.String) 메서드를 사용하여 전달된 형식 지정자에 따라 열거형 값을 다양한 방식으로 표시할 수 있습니다.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.      

참고 항목See also