Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Метод можно использовать Enum.ToString для создания нового строкового объекта, представляющего числовое, шестнадцатеричное или строковое значение элемента перечисления. Этот метод принимает одну из строк форматирования перечисления, чтобы указать возвращаемое значение.
В следующих разделах перечислены строки форматирования перечисления и возвращаемые значения. Эти спецификаторы формата не чувствительны к регистру.
G или g
Отображает запись перечисления в виде строкового значения, если это возможно, и в противном случае отображает целочисленное значение текущего экземпляра. Если перечисление определено с набором FlagsAttribute , строковые значения каждой допустимой записи объединяются вместе, разделенные запятыми.
Flags
Если атрибут не задан, недопустимое значение отображается в виде числовой записи. В следующем примере показан G
спецификатор формата.
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 или f
Отображает запись перечисления в виде строкового значения, если это возможно. Если значение может отображаться в виде суммирования записей перечисления (даже если Flags
атрибут отсутствует), строковые значения каждой допустимой записи объединяются вместе, разделенные запятыми. Если значение не может быть определено записями перечисления, то значение отформатировано как целочисленное значение. В следующем примере показан F
спецификатор формата.
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 или d
Отображает запись перечисления как целочисленное значение в самом кратком представлении. В следующем примере показан D
определитель формата.
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 или x
Отображает запись перечисления в виде шестнадцатеричного значения. Значение представлено начальными нулями при необходимости, чтобы гарантировать, что в строке результата есть два символа для каждого байта в базовом числовом типе перечисления. В следующем примере показан описатель формата X. В примере базовые типы DayOfWeek, ConsoleColor и FileAttributes имеют значение Int32, 32-разрядного (или 4-байтового) целого числа, которое создает 8-символьную строку результата.
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
Пример
В следующем примере определяется перечисление, которое Colors
состоит из трех записей: Red
, Blue
и Green
.
public enum Color { Red = 1, Blue = 2, Green = 3 };
Public Enum Color
Red = 1
Blue = 2
Green = 3
End Enum
После того как перечисление определено, экземпляр можно объявить следующим образом.
Color myColor = Color.Green;
Dim myColor As Color = Color.Green
Затем метод Color.ToString(System.String)
можно использовать для отображения значения перечисления различными способами, в зависимости от переданного в него спецификатора форматирования.
Console.WriteLine($"The value of myColor is {myColor.ToString("G")}.");
Console.WriteLine($"The value of myColor is {myColor.ToString("F")}.");
Console.WriteLine($"The value of myColor is {myColor.ToString("D")}.");
Console.WriteLine($"The value of myColor is 0x{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.