Enum.Format(Type, Object, String) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Převede zadanou hodnotu zadaného výčtového typu na odpovídající řetězcovou reprezentaci podle zadaného formátu.
public:
static System::String ^ Format(Type ^ enumType, System::Object ^ value, System::String ^ format);
public static string Format (Type enumType, object value, string format);
[System.Runtime.InteropServices.ComVisible(true)]
public static string Format (Type enumType, object value, string format);
static member Format : Type * obj * string -> string
[<System.Runtime.InteropServices.ComVisible(true)>]
static member Format : Type * obj * string -> string
Public Shared Function Format (enumType As Type, value As Object, format As String) As String
Parametry
- enumType
- Type
Typ výčtu hodnoty, která se má převést.
- value
- Object
Hodnota, kterou chcete převést.
- format
- String
Výstupní formát, který se má použít.
Návraty
Řetězcové vyjádření .value
- Atributy
Výjimky
Parametr enumType
, value
nebo format
je null
.
Parametr enumType
není Enum typ.
-nebo-
Je value
z výčtu, který se liší typem od enumType
.
-nebo-
Typ není value
podkladovým typem enumType
.
Parametr format
obsahuje neplatnou hodnotu.
format
rovná se "X", ale typ výčtu je neznámý.
-nebo-
.NET 8 a novější verze: enumType
je typ výčtu s logickým využitím.
Příklady
Následující příklad ukazuje použití v Format
kontextu Enum
.
using namespace System;
public enum class Colors
{
Red, Green, Blue, Yellow
};
int main()
{
Colors myColor = Colors::Blue;
Console::WriteLine( "My favorite color is {0}.", myColor );
Console::WriteLine( "The value of my favorite color is {0}.", Enum::Format( Colors::typeid, myColor, "d" ) );
Console::WriteLine( "The hex value of my favorite color is {0}.", Enum::Format( Colors::typeid, myColor, "x" ) );
}
// The example displays the folowing output:
// My favorite color is Blue.
// The value of my favorite color is 2.
// The hex value of my favorite color is 00000002.
using System;
enum Colors { Red, Green, Blue, Yellow };
public class FormatTest {
public static void Main() {
Colors myColor = Colors.Blue;
Console.WriteLine("My favorite color is {0}.", myColor);
Console.WriteLine("The value of my favorite color is {0}.", Enum.Format(typeof(Colors), myColor, "d"));
Console.WriteLine("The hex value of my favorite color is {0}.", Enum.Format(typeof(Colors), myColor, "x"));
}
}
// The example displays the following output:
// My favorite color is Blue.
// The value of my favorite color is 2.
// The hex value of my favorite color is 00000002.
open System
type Colors =
| Red = 0
| Green = 1
| Blue = 2
| Yellow = 3
let myColor = Colors.Blue
printfn $"My favorite color is {myColor}."
printfn $"""The value of my favorite color is {Enum.Format(typeof<Colors>, myColor, "d")}."""
printfn $"""The hex value of my favorite color is {Enum.Format(typeof<Colors>, myColor, "x")}."""
// The example displays the following output:
// My favorite color is Blue.
// The value of my favorite color is 2.
// The hex value of my favorite color is 00000002.
Enum Colors
Red
Green
Blue
Yellow
End Enum
Public Class FormatTest
Public Shared Sub Main()
Dim myColor As Colors = Colors.Blue
Console.WriteLine("My favorite color is {0}.", myColor)
Console.WriteLine("The value of my favorite color is {0}.", [Enum].Format(GetType(Colors), myColor, "d"))
Console.WriteLine("The hex value of my favorite color is {0}.", [Enum].Format(GetType(Colors), myColor, "x"))
End Sub
End Class
' The example displays the following output:
' My favorite color is Blue.
' The value of my favorite color is 2.
' The hex value of my favorite color is 00000002.
Poznámky
Následující tabulka uvádí platné hodnoty parametru format
.
Formát | Description |
---|---|
"G" nebo "g" | Pokud value je hodnota rovna pojmenované výčtové konstantě, vrátí se název této konstanty. V opačném případě se vrátí desítkový ekvivalent .value Předpokládejme například, že jediná výčtová konstanta má název Red a její hodnota je 1. Pokud value je zadaný jako 1, vrátí tento formát "Red". Pokud value je však zadaný jako 2, vrátí tento formát hodnotu 2.-nebo- FlagsAttribute Pokud je vlastní atribut použit na výčet, value je považován za bit pole, které obsahuje jeden nebo více příznaků, které se skládají z jednoho nebo více bitů.Pokud value se rovná kombinaci pojmenovaných výčtových konstant, vrátí se seznam názvů těchto konstant oddělený oddělovačem.
value hledá příznaky, od příznaku s největší hodnotou k nejmenší hodnotě. Pro každý příznak, který odpovídá bitovému poli v value , je název konstanty zřetězen se seznamem odděleným oddělovačem. Hodnota tohoto příznaku je pak vyloučena z dalšího zvážení a hledání dalšího příznaku pokračuje.Pokud value se hodnota nerovná kombinaci pojmenovaných výčtových konstant, vrátí se desítkový ekvivalent .value |
"X" nebo "x" | Představuje value v šestnáctkovém formátu bez počátečního "0x". |
"D" nebo "d" | Představuje value v desítkové podobě. |
"F" nebo "f" | Chová se stejně jako "G" nebo "g", s tím rozdílem FlagsAttribute , že není nutné, aby v deklaraci byl Enum . |