Enum.Format(Type, Object, String) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Convierte el valor especificado de un tipo enumerado especificado en la representación de cadena equivalente de acuerdo con el 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
Tipo de enumeración del valor que se va a convertir.
- value
- Object
Valor que se va a convertir.
- format
- String
Formato de resultados que se va a usar.
Devoluciones
Representación de cadena de value
.
- Atributos
Excepciones
El enumType
, value
o el parámetro format
es null
.
El parámetro enumType
no es un tipo Enum.
o bien
value
procede de una enumeración que difiere en tipo de enumType
.
o bien
El tipo de value
no es un tipo subyacente de enumType
.
El parámetro format
contiene un valor no válido.
format
es igual a "X", pero se desconoce el tipo de enumeración.
O bien
.NET 8 y versiones posteriores: enumType
es un tipo de enumeración con respaldo booleano.
Ejemplos
En el ejemplo siguiente se muestra el uso de Format
en el 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.
Comentarios
En la tabla siguiente se muestran los valores válidos para el format
parámetro .
Formato | Descripción |
---|---|
"G" o "g" | Si value es igual a una constante enumerada con nombre, se devuelve el nombre de esa constante; de lo contrario, se devuelve el equivalente decimal de value .Por ejemplo, supongamos que la única constante enumerada se denomina Red y su valor es 1. Si value se especifica como 1, este formato devuelve "Rojo". Sin embargo, si value se especifica como 2, este formato devuelve "2".o bien Si el FlagsAttribute atributo personalizado se aplica a la enumeración, value se trata como un campo de bits que contiene una o varias marcas que constan de uno o varios bits.Si value es igual a una combinación de constantes enumeradas con nombre, se devuelve una lista separada por delimitadores de los nombres de esas constantes.
value se busca marcas, pasando de la marca con el valor más grande al valor más pequeño. Para cada marca que corresponde a un campo de bits en value , el nombre de la constante se concatena a la lista separada por delimitadores. A continuación, el valor de esa marca se excluye de una consideración adicional y la búsqueda continúa para la marca siguiente.Si value no es igual a una combinación de constantes enumeradas con nombre, se devuelve el equivalente decimal de value . |
"X" o "x" | Representa value en formato hexadecimal sin un "0x" inicial. |
"D" o "d" | Representa value en formato decimal. |
"F" o "f" | Se comporta de forma idéntica a "G" o "g", salvo que FlagsAttribute no es necesario que esté presente en la Enum declaración. |