NumberStyles NumberStyles NumberStyles NumberStyles Enum

Definición

Determina los estilos permitidos en argumentos de cadena numéricos que se pasan a los métodos Parse y TryParse de los tipos numéricos enteros y de punto flotante.Determines the styles permitted in numeric string arguments that are passed to the Parse and TryParse methods of the integral and floating-point numeric types.

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

public enum class NumberStyles
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum NumberStyles
type NumberStyles = 
Public Enum NumberStyles
Herencia
Atributos

Campos

AllowCurrencySymbol AllowCurrencySymbol AllowCurrencySymbol AllowCurrencySymbol 256

Indica que la cadena numérica puede contener un símbolo de divisa.Indicates that the numeric string can contain a currency symbol. La propiedad CurrencySymbol determina los símbolos de divisa válidos.Valid currency symbols are determined by the CurrencySymbol property.

AllowDecimalPoint AllowDecimalPoint AllowDecimalPoint AllowDecimalPoint 32

Indica que la cadena numérica puede tener una coma decimal.Indicates that the numeric string can have a decimal point. Si el valor NumberStyles incluye la marca AllowCurrencySymbol y la cadena analizada incluye un símbolo de divisa, la propiedad CurrencyDecimalSeparator determina el carácter del separador decimal.If the NumberStyles value includes the AllowCurrencySymbol flag and the parsed string includes a currency symbol, the decimal separator character is determined by the CurrencyDecimalSeparator property. De lo contrario, el carácter separador decimal viene determinado por la propiedad NumberDecimalSeparator.Otherwise, the decimal separator character is determined by the NumberDecimalSeparator property.

AllowExponent AllowExponent AllowExponent AllowExponent 128

Indica que la cadena numérica puede tener una notación exponencial.Indicates that the numeric string can be in exponential notation. La marca AllowExponent permite a la cadena analizada contener un exponente que comienza con el carácter "E" o "e", un signo positivo opcional o negativo, y un enteroThe AllowExponent flag allows the parsed string to contain an exponent that begins with the "E" or "e" character and that is followed by an optional positive or negative sign and an integer. Dicho de otra manera, analiza correctamente las cadenas con formato nnnExx, nnnE+xx y nnnE-xx.In other words, it successfully parses strings in the form nnnExx, nnnE+xx, and nnnE-xx. No permite un separador decimal o signo en el significado o mantisa; para permitir que se analicen estos elementos de la cadena, use las marcas AllowDecimalPoint y AllowLeadingSign o un estilo compuesto que incluya estas marcas individuales.It does not allow a decimal separator or sign in the significand or mantissa; to allow these elements in the string to be parsed, use the AllowDecimalPoint and AllowLeadingSign flags, or use a composite style that includes these individual flags.

AllowHexSpecifier AllowHexSpecifier AllowHexSpecifier AllowHexSpecifier 512

Indica que la cadena numérica representa un valor hexadecimal.Indicates that the numeric string represents a hexadecimal value. Los valores hexadecimales válidos incluyen los dígitos numéricos 0-9 y los dígitos hexadecimales A-F y a-f.Valid hexadecimal values include the numeric digits 0-9 and the hexadecimal digits A-F and a-f. Las cadenas que se analizan con este estilo no pueden ir precedidas de "0x" ni "&h".Strings that are parsed using this style cannot be prefixed with "0x" or "&h". Una cadena que se analiza con el estilo AllowHexSpecifier siempre se interpretará como un valor hexadecimal.A string that is parsed with the AllowHexSpecifier style will always be interpreted as a hexadecimal value. Las únicas marcas que se pueden combinar con AllowHexSpecifier son AllowLeadingWhite y AllowTrailingWhite.The only flags that can be combined with AllowHexSpecifier are AllowLeadingWhite and AllowTrailingWhite. La enumeración NumberStyles incluye un estilo compuesto, HexNumber, que consta de estas tres marcas.The NumberStyles enumeration includes a composite style, HexNumber, that consists of these three flags.

AllowLeadingSign AllowLeadingSign AllowLeadingSign AllowLeadingSign 4

Indica que la cadena numérica puede tener un signo inicial.Indicates that the numeric string can have a leading sign. Los caracteres de signo inicial válidos se determinan mediante las propiedades PositiveSign y NegativeSign.Valid leading sign characters are determined by the PositiveSign and NegativeSign properties.

AllowLeadingWhite AllowLeadingWhite AllowLeadingWhite AllowLeadingWhite 1

Indica que la cadena analizada puede incluir caracteres de espacio en blanco iniciales.Indicates that leading white-space characters can be present in the parsed string. Los caracteres de espacio en blanco válidos tienen los valores Unicode U+0009, U+000A, U+000B, U+000C, U+000D y U+0020.Valid white-space characters have the Unicode values U+0009, U+000A, U+000B, U+000C, U+000D, and U+0020. Observe que este es un subconjunto de los caracteres para los que el método IsWhiteSpace(Char) devuelve true.Note that this is a subset of the characters for which the IsWhiteSpace(Char) method returns true.

AllowParentheses AllowParentheses AllowParentheses AllowParentheses 16

Indica que la cadena numérica puede tener una pareja de paréntesis para delimitar el número.Indicates that the numeric string can have one pair of parentheses enclosing the number. Los paréntesis indican que la cadena que se va a analizar representa un número negativo.The parentheses indicate that the string to be parsed represents a negative number.

AllowThousands AllowThousands AllowThousands AllowThousands 64

Indica que la cadena numérica puede tener separadores de grupo; como símbolos que separan las centenas de los millares.Indicates that the numeric string can have group separators, such as symbols that separate hundreds from thousands. Si el valor NumberStyles incluye la marca AllowCurrencySymbol y la cadena que se va a analizar incluye un símbolo de moneda, la propiedad CurrencyGroupSeparator determina el carácter del separador de grupo válido y la propiedad CurrencyGroupSizes determina el número de dígitos de cada grupo.If the NumberStyles value includes the AllowCurrencySymbol flag and the string to be parsed includes a currency symbol, the valid group separator character is determined by the CurrencyGroupSeparator property, and the number of digits in each group is determined by the CurrencyGroupSizes property. De lo contrario, el carácter separador del grupo válido se determina con la propiedad NumberGroupSeparator y el número de dígitos de cada grupo se determina con la propiedad NumberGroupSizes.Otherwise, the valid group separator character is determined by the NumberGroupSeparator property, and the number of digits in each group is determined by the NumberGroupSizes property.

AllowTrailingSign AllowTrailingSign AllowTrailingSign AllowTrailingSign 8

Indica que la cadena numérica puede tener un signo final.Indicates that the numeric string can have a trailing sign. Los caracteres de signo final válidos se determinan mediante las propiedades PositiveSign y NegativeSign.Valid trailing sign characters are determined by the PositiveSign and NegativeSign properties.

AllowTrailingWhite AllowTrailingWhite AllowTrailingWhite AllowTrailingWhite 2

Indica que la cadena analizada puede incluir caracteres de espacio en blanco finales.Indicates that trailing white-space characters can be present in the parsed string. Los caracteres de espacio en blanco válidos tienen los valores Unicode U+0009, U+000A, U+000B, U+000C, U+000D y U+0020.Valid white-space characters have the Unicode values U+0009, U+000A, U+000B, U+000C, U+000D, and U+0020. Observe que este es un subconjunto de los caracteres para los que el método IsWhiteSpace(Char) devuelve true.Note that this is a subset of the characters for which the IsWhiteSpace(Char) method returns true.

Any Any Any Any 511

Indica que se utilizan todos los estilos, excepto AllowHexSpecifier.Indicates that all styles except AllowHexSpecifier are used. Este es un estilo de número compuesto.This is a composite number style.

Currency Currency Currency Currency 383

Indica que se utilizan todos los estilos, excepto AllowExponent y AllowHexSpecifier.Indicates that all styles except AllowExponent and AllowHexSpecifier are used. Este es un estilo de número compuesto.This is a composite number style.

Float Float Float Float 167

Indica que se utilizan los estilos AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowDecimalPoint y AllowExponent.Indicates that the AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowDecimalPoint, and AllowExponent styles are used. Este es un estilo de número compuesto.This is a composite number style.

HexNumber HexNumber HexNumber HexNumber 515

Indica que se utilizan los estilos AllowLeadingWhite, AllowTrailingWhite y AllowHexSpecifier.Indicates that the AllowLeadingWhite, AllowTrailingWhite, and AllowHexSpecifier styles are used. Este es un estilo de número compuesto.This is a composite number style.

Integer Integer Integer Integer 7

Indica que se utilizan los estilos AllowLeadingWhite, AllowTrailingWhite y AllowLeadingSign.Indicates that the AllowLeadingWhite, AllowTrailingWhite, and AllowLeadingSign styles are used. Este es un estilo de número compuesto.This is a composite number style.

None None None None 0

Indica que no se puede encontrar ningún elemento de estilo, como los espacios iniciales o en blanco, separadores de miles o un separador decimal, en la cadena analizada.Indicates that no style elements, such as leading or trailing white space, thousands separators, or a decimal separator, can be present in the parsed string. La cadena que se va a analizar debe constar únicamente de dígitos decimales enteros.The string to be parsed must consist of integral decimal digits only.

Number Number Number Number 111

Indica que se utilizan los estilos AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPoint y AllowThousands.Indicates that the AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPoint, and AllowThousands styles are used. Este es un estilo de número compuesto.This is a composite number style.

Ejemplos

En este ejemplo se muestra cómo analizar una cadena en un entero de 32 bits mediante el uso NumberStyles de varias marcas.This example shows how to parse a string into a 32-bit integer by using various NumberStyles flags.

using namespace System;
using namespace System::Text;
using namespace System::Globalization;


int main()
{
    // Parse the string as a hex value and display the
    // value as a decimal.
    String^ numberString = "A";
    int stringValue = Int32::Parse(numberString, NumberStyles::HexNumber);
    Console::WriteLine("{0} in hex = {1} in decimal.",
        numberString, stringValue);

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

    // Parse the string, allowing parentheses, and ignoring
    // leading and trailing white spaces.
    numberString = "    (37)   ";
    stringValue = Int32::Parse(numberString, NumberStyles::AllowParentheses |
        NumberStyles::AllowLeadingSign | NumberStyles::AllowLeadingWhite |
        NumberStyles::AllowTrailingWhite);

    Console::WriteLine("'{0}' parsed to an int is '{1}'.",
        numberString, stringValue);
}

// 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'.
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'.
Imports System.Globalization
Imports System.Text

Public Module Example
   Public Sub Main() 
      ' Parse the string as a hex value and display the value as a decimal.
      Dim num As String = "A"
      Dim val As Integer = Int32.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 = Integer.Parse(num, NumberStyles.AllowLeadingSign Or 
                               NumberStyles.AllowLeadingWhite Or 
                               NumberStyles.AllowTrailingWhite)
      Console.WriteLine("'{0}' parsed to an integer is '{1}'.", num, val)

      ' Parse the string, allowing parentheses, and ignoring leading and trailing white spaces.
      num = "    (37)   "
      val = Integer.Parse(num, NumberStyles.AllowParentheses Or 
                               NumberStyles.AllowLeadingSign Or
                               NumberStyles.AllowLeadingWhite Or 
                               NumberStyles.AllowTrailingWhite)
      Console.WriteLine("'{0}' parsed to an integer is '{1}'.", num, val)
   End Sub
End Module
' The example displays the following output:
'       A in hex = 10 in decimal.
'       '    -45   ' parsed to an int is '-45'.
'       '    (37)   ' parsed to an int is '-37'.

Comentarios

La 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:The NumberStyles enumeration consists of two kinds of enumeration values that are used to parse the string representations of numeric values:

  • Marcas de campo individuales, que definen elementos de estilo específicos (como espacios en blanco y separadores de grupos) que pueden estar presentes en la cadena analizada.Individual field flags, which define specific style elements (such as white space and group separators) that can be present in the parsed string.

  • Estilos de número compuesto, que constan de varias marcas de campo que definen los elementos de estilo que pueden estar presentes en la cadena analizada.Composite number styles, which consist of multiple field flags that define the style elements that can be present in the parsed string.

A excepción AllowHexSpecifierde, las marcas de campo individuales NumberStyles en la enumeración definen elementos de estilo que se usan al analizar la representación de cadena de un número decimal.Except for AllowHexSpecifier, the individual field flags in the NumberStyles enumeration define style elements that are used when parsing the string representation of a decimal number. Noneindica que solo los dígitos pueden estar presentes en la cadena analizada.None indicates that only digits can be present in the parsed string. Las marcas de campo individuales restantes definen los elementos de estilo que pueden estar, pero que no tienen que estar, presentes en la representación de cadena de un número decimal para que la operación de análisis se realice correctamente.The remaining individual field flags define style elements that may be, but do not have to be, present in the string representation of a decimal number for the parse operation to succeed. En cambio, la AllowHexSpecifier marca indica que la cadena que se va a analizar siempre se interpreta como un valor hexadecimal.In contrast, the AllowHexSpecifier flag indicates that the string to be parsed is always interpreted as a hexadecimal value. Las únicas marcas de campo individuales que se pueden usar AllowHexSpecifier con AllowLeadingWhite son AllowTrailingWhitey.The only individual field flags that can be used with AllowHexSpecifier are AllowLeadingWhite and AllowTrailingWhite. La NumberStyles enumeración incluye un estilo de número HexNumbercompuesto,, que consta de las tres marcas.The NumberStyles enumeration includes a composite number style, HexNumber, that consists of all three flags.

Los miembros del System.Globalization.NumberFormatInfo objeto que se pasan implícita o explícitamente definen los símbolos (como el símbolo de moneda, el separador de grupos, el separador decimal y los signos positivos y negativos) que pueden aparecer en la cadena que se va a analizar. Parse al método.The symbols (such as the currency symbol, the group separator, the decimal separator, and the positive and negative signs) that can appear in the string to be parsed are defined by the members of the System.Globalization.NumberFormatInfo object that is passed either implicitly or explicitly to the Parse method. La tabla de miembros de este tema proporciona una descripción de cada marca individual e indica su relación NumberFormatInfo con las propiedades.The members table in this topic provides a description of each individual flag and indicates its relationship to NumberFormatInfo properties.

En la tabla siguiente se enumeran los estilos de número compuesto y se indican las marcas de campo individuales que incluyen.The following table lists the composite number styles and indicates which individual field flags they include. Un "1" en una celda indica que el estilo de número compuesto incluye el estilo de número individual en esa fila.A "1" in a cell indicates that the composite number style includes the individual number style in that row. Un "0" indica que el estilo de número compuesto no incluye el estilo de número individual.A "0" indicates that the composite number style does not include the individual number style.

CualquieraAny MonedaCurrency FloatFloat IntegerInteger númeroNumber HexNumberHexNumber
AllowHexSpecifier (0x0200)AllowHexSpecifier (0x0200) 00 00 00 00 00 11
AllowCurrencySymbol (0x0100)AllowCurrencySymbol (0x0100) 11 11 00 00 00 00
AllowExponent (0x0080)AllowExponent (0x0080) 11 00 11 00 00 00
AllowThousands (0x0040)AllowThousands (0x0040) 11 11 00 00 11 00
AllowDecimalPoint (0x0020)AllowDecimalPoint (0x0020) 11 11 11 00 11 00
AllowParentheses (0x0010)AllowParentheses (0x0010) 11 11 00 00 00 00
AllowTrailingSign (0x0008)AllowTrailingSign (0x0008) 11 11 00 00 11 00
AllowLeadingSign (0x0004)AllowLeadingSign (0x0004) 11 11 11 11 11 00
AllowTrailingWhite (0x0002)AllowTrailingWhite (0x0002) 11 11 11 11 11 11
AllowLeadingWhite (0x0001)AllowLeadingWhite (0x0001) 11 11 11 11 11 11
(0x1ff)(0x1ff) (0x17f)(0x17f) (0x0a7)(0x0a7) (0x007)(0x007) (0x06f)(0x06f) (0x203)(0x203)

Se aplica a

Consulte también: