Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Enumeración NumberStyles

 

Publicado: octubre de 2016

Determina los estilos permitidos en argumentos de cadena numéricos que se pasan a la Parse y TryParse métodos de los tipos numéricos enteros y de punto flotante.

Esta enumeración tiene un atributo FlagsAttribute que permite una combinación bit a bit de sus valores de miembro.

Espacio de nombres:   System.Globalization
Ensamblado:  mscorlib (en mscorlib.dll)

[SerializableAttribute]
[FlagsAttribute]
[ComVisibleAttribute(true)]
public enum NumberStyles

Nombre de miembroDescripción
AllowCurrencySymbol

Indica que la cadena numérica puede contener un símbolo de moneda. Símbolos de moneda válidos se determinan mediante la NumberFormatInfo.CurrencySymbol propiedad.

AllowDecimalPoint

Indica que la cadena numérica puede tener un punto decimal. Si el NumberStyles valor incluye la AllowCurrencySymbol marca y la cadena analizada incluye un símbolo de moneda, el carácter de separador decimal depende de la NumberFormatInfo.CurrencyDecimalSeparator propiedad. De lo contrario, el carácter de separador decimal depende de la NumberFormatInfo.NumberDecimalSeparator propiedad.

AllowExponent

Indica que la cadena numérica puede estar en notación exponencial. El AllowExponent indicador permite que la cadena analizada contener un exponente que comienza con el carácter "E" o "e" y que va seguido de un signo positivo o negativo opcional y un entero. En otras palabras, se analiza correctamente cadenas con el formato nnnExx, nnnE +xx, y nnnE -xx. No permitir un separador decimal o inicie sesión en la mantisa o mantisa; para permitir que estos elementos en la cadena que se va a analizar, utilice la AllowDecimalPoint y AllowLeadingSign marcas o usar un estilo compuesto que incluye estas marcas individuales.

AllowHexSpecifier

Indica que la cadena numérica representa un valor hexadecimal. Los valores hexadecimales válidos incluyen los dígitos numéricos 0-9 y los dígitos hexadecimales A-f y a-f. Las cadenas que se analizan con este estilo no pueden ir precedidas con "0 x" o "& h". Una cadena que se analiza con la AllowHexSpecifier estilo siempre se interpretará como un valor hexadecimal. Las marcas únicas que se pueden combinar con AllowHexSpecifier son AllowLeadingWhite y AllowTrailingWhite. El NumberStyles enumeración incluye un estilo compuesto, HexNumber, que consta de estos tres marcadores.

AllowLeadingSign

Indica que la cadena numérica puede tener un signo inicial. Los caracteres de signo inicial válidos se determinan mediante el NumberFormatInfo.PositiveSign y NumberFormatInfo.NegativeSign Propiedades.

AllowLeadingWhite

Indica que los caracteres de espacio en blanco iniciales pueden estar presentes en la cadena analizada. Los caracteres de espacio en blanco válidos tienen los valores Unicode u+0009, U + 000A, U+10000 000B, U+000C, U+000D y u+0020. Tenga en cuenta que esto es un subconjunto de los caracteres que el Char.IsWhiteSpace método devuelve true.

AllowParentheses

Indica que la cadena numérica puede tener un par del número entre paréntesis. Los paréntesis indican que la cadena que se va a analizar representa un número negativo.

AllowThousands

Indica que la cadena numérica puede tener separadores de grupo, como los símbolos que separan los cientos de miles. Si el NumberStyles valor incluye la AllowCurrencySymbol marca y la cadena se analiza incluye un símbolo de moneda, el carácter de separador de grupo válido está determinado por la NumberFormatInfo.CurrencyGroupSeparator propiedad y el número de dígitos en cada grupo se determina por la NumberFormatInfo.CurrencyGroupSizes propiedad. De lo contrario, el carácter de separador de grupo válido está determinado por la NumberFormatInfo.NumberGroupSeparator propiedad y el número de dígitos en cada grupo se determina por la NumberFormatInfo.NumberGroupSizes propiedad.

AllowTrailingSign

Indica que la cadena numérica puede tener un signo final. Los finales de caracteres están determinados por el inicio de sesión es válido el NumberFormatInfo.PositiveSign y NumberFormatInfo.NegativeSign Propiedades.

AllowTrailingWhite

Indica que los caracteres de espacio en blanco finales pueden estar presentes en la cadena analizada. Los caracteres de espacio en blanco válidos tienen los valores Unicode u+0009, U + 000A, U+10000 000B, U+000C, U+000D y u+0020. Tenga en cuenta que esto es un subconjunto de los caracteres que el Char.IsWhiteSpace método devuelve true.

Any

Indica que todos los estilos excepto AllowHexSpecifier se usan. Se trata de un estilo de número compuesto.

Currency

Indica que todos los estilos excepto AllowExponent y AllowHexSpecifier se usan. Se trata de un estilo de número compuesto.

Float

Indica que el AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowDecimalPoint, y AllowExponent se utilizan los estilos. Se trata de un estilo de número compuesto.

HexNumber

Indica que el AllowLeadingWhite, AllowTrailingWhite, y AllowHexSpecifier se utilizan los estilos. Se trata de un estilo de número compuesto.

Integer

Indica que el AllowLeadingWhite, AllowTrailingWhite, y AllowLeadingSign se utilizan los estilos. Se trata de un estilo de número compuesto.

None

Indica que no hay elementos de estilo, como iniciales o finales en blanco espacio, miles separadores o un separador decimal, puede estar presente en la cadena analizada. La cadena que se va a analizar debe constar de enteros dígitos decimales.

Number

Indica que el AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPoint, y AllowThousands se utilizan los estilos. Se trata de un estilo de número compuesto.

El NumberStyles enumeración consta de dos tipos de valores de enumeración que se usan para analizar las representaciones de cadena de valores numéricos:

  • Indicadores de campo individuales, que definen los elementos de estilo específica (como espacios en blanco y separadores de grupo) que pueden estar presentes en la cadena analizada.

  • Estilos de número compuestos que constan de varias marcas de campo que definen los elementos de estilo que pueden estar presentes en la cadena analizada.

Excepción de AllowHexSpecifier, marca el campo individual en el NumberStyles enumeración definir elementos de estilo que se utilizan al analizar la representación de cadena de un número decimal. None indica que sólo los dígitos pueden estar presentes en la cadena analizada. Los indicadores de campo individuales restantes definen elementos de estilo que pueden ser, pero no tienen que ser, están presentes en la representación de cadena de un número decimal para la operación de análisis se realice correctamente. En cambio, el AllowHexSpecifier marca indica que la cadena que se va a analizar siempre se interpreta como un valor hexadecimal. Los indicadores de campo individuales sólo pueden utilizarse con AllowHexSpecifier son AllowLeadingWhite y AllowTrailingWhite. El NumberStyles enumeración incluye un estilo de número compuesto, HexNumber, que consta de todos los indicadores de tres.

Definen los símbolos (por ejemplo, el símbolo de moneda, el separador de grupo, el separador decimal y los signos positivos y negativos) que pueden aparecer en la cadena que se va a analizar los miembros de la System.Globalization.NumberFormatInfo objeto pasado ya sea implícita o explícitamente a la Parse (método). La tabla de miembros en este tema se proporciona una descripción de cada indicador individual y se indica su relación con NumberFormatInfo Propiedades.

La tabla siguiente muestra los estilos de número compuestos e indica qué indicadores de campo individuales que se incluyen. Un "1" en una celda indica que el estilo de número compuesto incluye el estilo de número individual en esa fila. Un "0" indica que el estilo de número compuesto no incluye el estilo de número.

Cualquiera

Moneda

Flotante

Entero

Número

Número hexadecimal

AllowHexSpecifier (0 x 0200)

0

0

0

0

0

1

AllowCurrencySymbol (0 x 0100)

1

1

0

0

0

0

AllowExponent (0 x 0080)

1

0

1

0

0

0

AllowThousands (0x0040)

1

1

0

0

1

0

AllowDecimalPoint (0 x 0020)

1

1

1

0

1

0

AllowParentheses (0 x 0010)

1

1

0

0

0

0

AllowTrailingSign (0 x 0008)

1

1

0

0

1

0

AllowLeadingSign (0 x 0004)

1

1

1

1

1

0

AllowTrailingWhite (0 x 0002)

1

1

1

1

1

1

AllowLeadingWhite (0 x 0001)

1

1

1

1

1

1

(0x1ff)

(0x17f)

(0x0a7)

(0x007)

(0x06f)

(0x203)

Este ejemplo muestra cómo analizar una cadena en un entero de 32 bits utilizando varios NumberStyles marcas.

using System;
using System.Text;
using System.Globalization;

public sealed class App 
{
    static void Main() 
    {
        // Parse the string as a hex value and display the value as a decimal.
        String num = "A";
        int val = int.Parse(num, NumberStyles.HexNumber);
        Console.WriteLine("{0} in hex = {1} in decimal.", num, val);

        // Parse the string, allowing a leading sign, and ignoring leading and trailing white spaces.
        num = "    -45   ";
        val = int.Parse(num, NumberStyles.AllowLeadingSign | 
            NumberStyles.AllowLeadingWhite | NumberStyles.AllowTrailingWhite);
        Console.WriteLine("'{0}' parsed to an int is '{1}'.", num, val);

        // Parse the string, allowing parentheses, and ignoring leading and trailing white spaces.
        num = "    (37)   ";
        val = int.Parse(num, NumberStyles.AllowParentheses | NumberStyles.AllowLeadingSign |                         NumberStyles.AllowLeadingWhite | NumberStyles.AllowTrailingWhite);
        Console.WriteLine("'{0}' parsed to an int is '{1}'.", num, val);
    }
}

// This code produces the following output.
//
// A in hex = 10 in decimal.
// '    -45   ' parsed to an int is '-45'.
// '    (37)   ' parsed to an int is '-37'.

Plataforma universal de Windows
Disponible desde 8
.NET Framework
Disponible desde 1.1
Biblioteca de clases portable
Se admite en: plataformas portátiles de .NET
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Windows Phone
Disponible desde 8.1
Volver al principio
Mostrar: