Enum.Format(Type, Object, String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Converte o valor especificado de um tipo enumerado especificado em sua representação de cadeia de caracteres equivalente de acordo com o formato especificado.
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
Parâmetros
- enumType
- Type
O tipo de enumeração do valor a ser convertido.
- value
- Object
O valor a ser convertido.
- format
- String
O formato de saída a ser usado.
Retornos
Uma representação da cadeia de caracteres de value
.
- Atributos
Exceções
O parâmetro enumType
, value
ou format
é null
.
O parâmetro enumType
não é um tipo Enum.
- ou -
O value
é de uma enumeração que difere no tipo de enumType
.
- ou -
O tipo de value
não é um tipo subjacente de enumType
.
O parâmetro format
contém um valor inválido.
format
igual a "X", mas o tipo de enumeração é desconhecido.
-ou-
.NET 8 e versões posteriores: enumType
é um tipo de enumeração com suporte booliano.
Exemplos
O exemplo a seguir ilustra o uso de Format
no contexto de 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.
Comentários
A tabela a seguir mostra os valores válidos para o format
parâmetro .
Formatar | Descrição |
---|---|
"G" ou "g" | Se value for igual a uma constante enumerada nomeada, o nome dessa constante será retornado; caso contrário, o equivalente decimal de value será retornado.Por exemplo, suponha que a única constante enumerada seja chamada de Vermelho e seu valor seja 1. Se value for especificado como 1, esse formato retornará "Vermelho". No entanto, se value for especificado como 2, esse formato retornará "2".- ou - Se o FlagsAttribute atributo personalizado for aplicado à enumeração, value será tratado como um campo de bits que contém um ou mais sinalizadores que consistem em um ou mais bits.Se value for igual a uma combinação de constantes enumeradas nomeadas, uma lista separada por delimitadores dos nomes dessas constantes será retornada.
value é pesquisado por sinalizadores, indo do sinalizador com o maior valor para o menor valor. Para cada sinalizador que corresponde a um campo de bits em value , o nome da constante é concatenado à lista separada por delimitador. O valor desse sinalizador é então excluído da consideração adicional e a pesquisa continua para o próximo sinalizador.Se value não for igual a uma combinação de constantes enumeradas nomeadas, o equivalente decimal de value será retornado. |
"X" ou "x" | Representa value no formato hexadecimal sem um "0x" à esquerda. |
"D" ou "d" | Representa value em formato decimal. |
"F" ou "f" | Comporta-se de forma idêntica a "G" ou "g", exceto que o FlagsAttribute não precisa estar presente na Enum declaração. |