UInt64.Parse Método

Definición

Convierte la representación en forma de cadena de un número en el entero de 64 bits sin signo equivalente.Converts the string representation of a number to its 64-bit unsigned integer equivalent.

Sobrecargas

Parse(String, NumberStyles, IFormatProvider)

Convierte la representación en forma de cadena de un número con el estilo y el formato específicos de la referencia cultural que se hayan especificado en el entero de 64 bits sin signo equivalente.Converts the string representation of a number in a specified style and culture-specific format to its 64-bit unsigned integer equivalent.

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)
Parse(String, NumberStyles)

Convierte la representación en forma de cadena de un número del estilo especificado en el entero de 64 bits sin signo equivalente.Converts the string representation of a number in a specified style to its 64-bit unsigned integer equivalent.

Parse(String)

Convierte la representación en forma de cadena de un número en el entero de 64 bits sin signo equivalente.Converts the string representation of a number to its 64-bit unsigned integer equivalent.

Parse(String, IFormatProvider)

Convierte la representación en forma de cadena de un número con el formato específico de la referencia cultural que se haya especificado en el entero de 64 bits sin signo equivalente.Converts the string representation of a number in a specified culture-specific format to its 64-bit unsigned integer equivalent.

Parse(String, NumberStyles, IFormatProvider)

Importante

Esta API no es conforme a CLS.

Alternativa conforme a CLS
System.Decimal.Parse(String)

Convierte la representación en forma de cadena de un número con el estilo y el formato específicos de la referencia cultural que se hayan especificado en el entero de 64 bits sin signo equivalente.Converts the string representation of a number in a specified style and culture-specific format to its 64-bit unsigned integer equivalent.

public:
 static System::UInt64 Parse(System::String ^ s, System::Globalization::NumberStyles style, IFormatProvider ^ provider);
[System.CLSCompliant(false)]
public static ulong Parse (string s, System.Globalization.NumberStyles style, IFormatProvider provider);
static member Parse : string * System.Globalization.NumberStyles * IFormatProvider -> uint64
Public Shared Function Parse (s As String, style As NumberStyles, provider As IFormatProvider) As ULong

Parámetros

s
String

Una cadena que representa el número que se va a convertir.A string that represents the number to convert. La cadena se interpreta usando el estilo especificado por el parámetro style.The string is interpreted by using the style specified by the style parameter.

style
NumberStyles

Combinación bit a bit de los valores de enumeración que indica los elementos de estilo que pueden estar presentes en s.A bitwise combination of enumeration values that indicates the style elements that can be present in s. Un valor que se especifica de forma habitual es Integer.A typical value to specify is Integer.

provider
IFormatProvider

Objeto que proporciona información de formato específica de la referencia cultural acerca de s.An object that supplies culture-specific formatting information about s.

Devoluciones

Entero sin signo de 64 bits equivalente al número especificado en s.A 64-bit unsigned integer equivalent to the number specified in s.

Atributos

Excepciones

El parámetro s es null.The s parameter is null.

style no es un valor NumberStyles.style is not a NumberStyles value.

O bien-or- style no es una combinación de valores AllowHexSpecifier y HexNumber.style is not a combination of AllowHexSpecifier and HexNumber values.

El parámetro s no está en un formato compatible con style.The s parameter is not in a format compliant with style.

El parámetro s representa un número menor que MinValue o mayor que MaxValue.The s parameter represents a number less than MinValue or greater than MaxValue.

o bien-or- s incluye dígitos fraccionarios distintos de cero.s includes non-zero, fractional digits.

Ejemplos

En el ejemplo siguiente se Parse(String, NumberStyles, IFormatProvider) usa el método para convertir varias representaciones de cadena de números en valores enteros de 64 bits sin signo.The following example uses the Parse(String, NumberStyles, IFormatProvider) method to convert various string representations of numbers to 64-bit unsigned integer values.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] cultureNames= { "en-US", "fr-FR" };
      NumberStyles[] styles= { NumberStyles.Integer,
                               NumberStyles.Integer | NumberStyles.AllowDecimalPoint };
      string[] values = { "170209", "+170209.0", "+170209,0", "-103214.00",
                                 "-103214,00", "104561.1", "104561,1" };
      
      // Parse strings using each culture
      foreach (string cultureName in cultureNames)
      {
         CultureInfo ci = new CultureInfo(cultureName);
         Console.WriteLine("Parsing strings using the {0} culture", 
                           ci.DisplayName);
         // Use each style.
         foreach (NumberStyles style in styles)
         {
            Console.WriteLine("   Style: {0}", style.ToString());
            // Parse each numeric string.
            foreach (string value in values)
            {
               try {
                  Console.WriteLine("      Converted '{0}' to {1}.", value,
                                    UInt64.Parse(value, style, ci));
               }
               catch (FormatException) {
                  Console.WriteLine("      Unable to parse '{0}'.", value);
               }      
               catch (OverflowException) {
                  Console.WriteLine("      '{0}' is out of range of the UInt64 type.",
                                    value);
               }
            }
         }
      }                                    
   }
}
// The example displays the following output:
//       Style: Integer
//          Converted '170209' to 170209.
//          Unable to parse '+170209.0'.
//          Unable to parse '+170209,0'.
//          Unable to parse '-103214.00'.
//          Unable to parse '-103214,00'.
//          Unable to parse '104561.1'.
//          Unable to parse '104561,1'.
//       Style: Integer, AllowDecimalPoint
//          Converted '170209' to 170209.
//          Converted '+170209.0' to 170209.
//          Unable to parse '+170209,0'.
//          '-103214.00' is out of range of the UInt64 type.
//          Unable to parse '-103214,00'.
//          '104561.1' is out of range of the UInt64 type.
//          Unable to parse '104561,1'.
//    Parsing strings using the French (France) culture
//       Style: Integer
//          Converted '170209' to 170209.
//          Unable to parse '+170209.0'.
//          Unable to parse '+170209,0'.
//          Unable to parse '-103214.00'.
//          Unable to parse '-103214,00'.
//          Unable to parse '104561.1'.
//          Unable to parse '104561,1'.
//       Style: Integer, AllowDecimalPoint
//          Converted '170209' to 170209.
//          Unable to parse '+170209.0'.
//          Converted '+170209,0' to 170209.
//          Unable to parse '-103214.00'.
//          '-103214,00' is out of range of the UInt64 type.
//          Unable to parse '104561.1'.
//          '104561,1' is out of range of the UInt64 type.
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim cultureNames() As String = { "en-US", "fr-FR" }
      Dim styles() As NumberStyles = { NumberStyles.Integer, _
                                       NumberStyles.Integer Or NumberStyles.AllowDecimalPoint }
      Dim values() As String = { "170209", "+170209.0", "+170209,0", "-103214.00", _
                                 "-103214,00", "104561.1", "104561,1" }
      
      ' Parse strings using each culture
      For Each cultureName As String In cultureNames
         Dim ci As New CultureInfo(cultureName)
         Console.WriteLine("Parsing strings using the {0} culture", ci.DisplayName)
         ' Use each style.
         For Each style As NumberStyles In styles
            Console.WriteLine("   Style: {0}", style.ToString())
            ' Parse each numeric string.
            For Each value As String In values
               Try
                  Console.WriteLine("      Converted '{0}' to {1}.", value, _
                                    UInt64.Parse(value, style, ci))
               Catch e As FormatException
                  Console.WriteLine("      Unable to parse '{0}'.", value)   
               Catch e As OverflowException
                  Console.WriteLine("      '{0}' is out of range of the UInt64 type.", _
                                    value)         
               End Try
            Next
         Next
      Next                                    
   End Sub
End Module
' The example displays the following output:
'       Style: Integer
'          Converted '170209' to 170209.
'          Unable to parse '+170209.0'.
'          Unable to parse '+170209,0'.
'          Unable to parse '-103214.00'.
'          Unable to parse '-103214,00'.
'          Unable to parse '104561.1'.
'          Unable to parse '104561,1'.
'       Style: Integer, AllowDecimalPoint
'          Converted '170209' to 170209.
'          Converted '+170209.0' to 170209.
'          Unable to parse '+170209,0'.
'          '-103214.00' is out of range of the UInt64 type.
'          Unable to parse '-103214,00'.
'          '104561.1' is out of range of the UInt64 type.
'          Unable to parse '104561,1'.
'    Parsing strings using the French (France) culture
'       Style: Integer
'          Converted '170209' to 170209.
'          Unable to parse '+170209.0'.
'          Unable to parse '+170209,0'.
'          Unable to parse '-103214.00'.
'          Unable to parse '-103214,00'.
'          Unable to parse '104561.1'.
'          Unable to parse '104561,1'.
'       Style: Integer, AllowDecimalPoint
'          Converted '170209' to 170209.
'          Unable to parse '+170209.0'.
'          Converted '+170209,0' to 170209.
'          Unable to parse '-103214.00'.
'          '-103214,00' is out of range of the UInt64 type.
'          Unable to parse '104561.1'.
'          '104561,1' is out of range of the UInt64 type.

Comentarios

El style parámetro define los elementos de estilo (como el espacio en blanco o el símbolo de signo positivo o negativo) que se s permiten en el parámetro para que la operación de análisis se realice correctamente.The style parameter defines the style elements (such as white space or the positive or negative sign symbol) that are allowed in the s parameter for the parse operation to succeed. Debe ser una combinación de marcas de bits de la NumberStyles enumeración.It must be a combination of bit flags from the NumberStyles enumeration.

Dependiendo del valor de style, el s parámetro puede incluir los siguientes elementos:Depending on the value of style, the s parameter may include the following elements:

[ws][$][sign]digits[.fractional_digits][E[sign]exponential_digits][ws][ws][$][sign]digits[.fractional_digits][E[sign]exponential_digits][ws]

Los elementos de los corchetes ([ y ]) son opcionales.Elements in square brackets ([ and ]) are optional. Si style incluye NumberStyles.AllowHexSpecifier, els parámetro puede incluir los siguientes elementos:If style includes NumberStyles.AllowHexSpecifier, the s parameter may include the following elements:

[WS] hexdigits [WS][ws]hexdigits[ws]

En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
wsws Espacio en blanco opcional.Optional white space. Puede aparecer un espacio en blanco al principio s de style si incluye NumberStyles.AllowLeadingWhite la marca y puede aparecer al final de s si style incluye la NumberStyles.AllowTrailingWhite marca.White space can appear at the beginning of s if style includes the NumberStyles.AllowLeadingWhite flag, and it can appear at the end of s if style includes the NumberStyles.AllowTrailingWhite flag.
$ Un símbolo de divisa específico de la referencia cultural.A culture-specific currency symbol. Su posición en la cadena se define mediante la CurrencyPositivePattern propiedad NumberFormatInfo del objeto devuelto provider por el GetFormat método del parámetro.Its position in the string is defined by the CurrencyPositivePattern property of the NumberFormatInfo object that is returned by the GetFormat method of the provider parameter. El símbolo de moneda puede aparecer s en style si incluye NumberStyles.AllowCurrencySymbol la marca.The currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Un signo opcional.An optional sign. (El método produce OverflowException una excepción si s incluye un signo negativo y representa un número distinto de cero). El signo puede aparecer al principio de s si style incluye la NumberStyles.AllowLeadingSign marca y puede aparecer al final de s si style incluye la NumberStyles.AllowTrailingSign marca.(The method throws an OverflowException if s includes a negative sign and represents a non-zero number.) The sign can appear at the beginning of s if style includes the NumberStyles.AllowLeadingSign flag, and it can appear the end of s if style includes the NumberStyles.AllowTrailingSign flag. Los paréntesis se pueden usar en s para indicar un valor negativo si style incluye la NumberStyles.AllowParentheses marca.Parentheses can be used in s to indicate a negative value if style includes the NumberStyles.AllowParentheses flag.
digitsdigits Secuencia de dígitos del 0 al 9.A sequence of digits from 0 through 9.
.. Un símbolo de separador decimal específico de la referencia cultural.A culture-specific decimal point symbol. El símbolo de separador decimal de la referencia s cultural style actual puede NumberStyles.AllowDecimalPoint aparecer en si incluye la marca.The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits Una o varias apariciones del dígito 0-9 Si style incluye la NumberStyles.AllowExponent marca, o una o varias apariciones del dígito 0 si no lo está.One or more occurrences of the digit 0-9 if style includes the NumberStyles.AllowExponent flag, or one or more occurrences of the digit 0 if it does not. Los dígitos fraccionarios solo pueden s aparecer en style si incluye NumberStyles.AllowDecimalPoint la marca.Fractional digits can appear in s only if style includes the NumberStyles.AllowDecimalPoint flag.
EE El carácter "e" o "E", que indica que el valor se representa en notación exponencial (científica).The "e" or "E" character, which indicates that the value is represented in exponential (scientific) notation. El s parámetro puede representar un número en notación exponencial si style incluye la NumberStyles.AllowExponent marca.The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
exponential_digitsexponential_digits Secuencia de dígitos del 0 al 9.A sequence of digits from 0 through 9. El s parámetro puede representar un número en notación exponencial si style incluye la NumberStyles.AllowExponent marca.The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
hexdigitshexdigits Secuencia de dígitos hexadecimales de 0 a f, o de 0 a F.A sequence of hexadecimal digits from 0 through f, or 0 through F.

Nota

Los caracteres NUL de terminación (U + 0000) s de se omiten en la operación de análisis, independientemente del valor style del argumento.Any terminating NUL (U+0000) characters in s are ignored by the parsing operation, regardless of the value of the style argument.

Una cadena con dígitos decimales solamente (que corresponde NumberStyles.None al estilo) siempre se analiza correctamente.A string with decimal digits only (which corresponds to the NumberStyles.None style) always parses successfully. La mayoría de los NumberStyles miembros restantes controlan los elementos que pueden estar presentes, pero que no es necesario que estén presentes, en esta cadena de entrada.Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in this input string. En la tabla siguiente se indica NumberStyles cómo afectan los miembros individuales a los elementos que spueden estar presentes en.The following table indicates how individual NumberStyles members affect the elements that may be present in s.

Valores no compuestos NumberStylesNon-composite NumberStyles values Elementos permitidos s en además de dígitosElements permitted in s in addition to digits
NumberStyles.None Solo dígitos decimales.Decimal digits only.
NumberStyles.AllowDecimalPoint El separador decimal (.) y los elementos de dígitos .The decimal point (.) and fractional_digits elements. Sin embargo, si Style no incluye la NumberStyles.AllowExponent marca, los dígitos fraccionarios deben constar solo de uno o más dígitos 0 OverflowException ; de lo contrario, se produce una excepción.However, if style does not include the NumberStyles.AllowExponent flag, fractional_digits must consist of only one or more 0 digits; otherwise, an OverflowException is thrown.
NumberStyles.AllowExponent El carácter "e" o "E", que indica la notación exponencial, junto con exponential_digits.The "e" or "E" character, which indicates exponential notation, along with exponential_digits.
NumberStyles.AllowLeadingWhite Elemento WS al principio de s.The ws element at the beginning of s.
NumberStyles.AllowTrailingWhite Elemento WS al final de s.The ws element at the end of s.
NumberStyles.AllowLeadingSign Un signo antes de los dígitos.A sign before digits.
NumberStyles.AllowTrailingSign Un signo después de dígitos.A sign after digits.
NumberStyles.AllowParentheses Paréntesis antes y después de los dígitos para indicar un valor negativo.Parentheses before and after digits to indicate a negative value.
NumberStyles.AllowThousands El elemento separador de grupos (,).The group separator (,) element.
NumberStyles.AllowCurrencySymbol El elemento Currency*$().The currency ($*) element.

Si se NumberStyles.AllowHexSpecifier usa la marca, s debe ser un valor hexadecimal.If the NumberStyles.AllowHexSpecifier flag is used, s must be a hexadecimal value. Los caracteres hexadecimales válidos son 0-9, A-F y a-F.Valid hexadecimal characters are 0-9, A-F, and a-f. No se admite un prefijo como "0x" y hace que se produzca un error en la operación de análisis.A prefix such as "0x" is not supported and causes the parse operation to fail. Las demás marcas que se pueden combinar con él son NumberStyles.AllowLeadingWhite y. NumberStyles.AllowTrailingWhiteThe only other flags that can be combined with it are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (La NumberStyles enumeración incluye un estilo de número NumberStyles.HexNumbercompuesto,, que incluye ambas marcas de espacio en blanco).(The NumberStyles enumeration includes a composite number style, NumberStyles.HexNumber, that includes both white-space flags.)

Nota

Si el s parámetro es la representación de cadena de un número hexadecimal, no puede ir precedido de ninguna decoración ( 0x como o &h) que lo diferencie como un número hexadecimal.If the s parameter is the string representation of a hexadecimal number, it cannot be preceded by any decoration (such as 0x or &h) that differentiates it as a hexadecimal number. Esto hace que la operación de análisis produzca una excepción.This causes the parse operation to throw an exception.

El provider parámetro es una IFormatProvider implementación de GetFormat cuyo método devuelve NumberFormatInfo un objeto que proporciona información específica de la referencia cultural acerca sdel formato de.The provider parameter is an IFormatProvider implementation whose GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of s. Hay tres maneras de usar el provider parámetro para proporcionar información de formato personalizada a la operación de análisis:There are three ways to use the provider parameter to supply custom formatting information to the parse operation:

  • Puede pasar el objeto real NumberFormatInfo que proporciona información de formato.You can pass the actual NumberFormatInfo object that provides formatting information. (Su implementación de GetFormat simplemente se devuelve).(Its implementation of GetFormat simply returns itself.)

  • Puede pasar un CultureInfo objeto que especifica la referencia cultural cuyo formato se va a utilizar.You can pass a CultureInfo object that specifies the culture whose formatting is to be used. Su NumberFormat propiedad proporciona información de formato.Its NumberFormat property provides formatting information.

  • Puede pasar una implementación personalizada IFormatProvider .You can pass a custom IFormatProvider implementation. Su GetFormat método debe crear instancias y devolver el NumberFormatInfo objeto que proporciona información de formato.Its GetFormat method must instantiate and return the NumberFormatInfo object that provides formatting information.

Si provider NumberFormatInfo es null, se usa el objeto de la referencia cultural actual.If provider is null, the NumberFormatInfo object for the current culture is used.

Consulte también:

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Importante

Esta API no es conforme a CLS.

[System.CLSCompliant(false)]
public static ulong Parse (ReadOnlySpan<char> s, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Integer, IFormatProvider provider = null);
static member Parse : ReadOnlySpan<char> * System.Globalization.NumberStyles * IFormatProvider -> uint64
Public Shared Function Parse (s As ReadOnlySpan(Of Char), Optional style As NumberStyles = System.Globalization.NumberStyles.Integer, Optional provider As IFormatProvider = null) As ULong

Parámetros

style
NumberStyles
provider
IFormatProvider

Devoluciones

Atributos

Parse(String, NumberStyles)

Importante

Esta API no es conforme a CLS.

Alternativa conforme a CLS
System.Decimal.Parse(String)

Convierte la representación en forma de cadena de un número del estilo especificado en el entero de 64 bits sin signo equivalente.Converts the string representation of a number in a specified style to its 64-bit unsigned integer equivalent.

public:
 static System::UInt64 Parse(System::String ^ s, System::Globalization::NumberStyles style);
[System.CLSCompliant(false)]
public static ulong Parse (string s, System.Globalization.NumberStyles style);
static member Parse : string * System.Globalization.NumberStyles -> uint64
Public Shared Function Parse (s As String, style As NumberStyles) As ULong

Parámetros

s
String

Una cadena que representa el número que se va a convertir.A string that represents the number to convert. La cadena se interpreta usando el estilo especificado por el parámetro style.The string is interpreted by using the style specified by the style parameter.

style
NumberStyles

Combinación bit a bit de los valores de enumeración que especifican el formato permitido de s.A bitwise combination of the enumeration values that specifies the permitted format of s. Un valor que se especifica de forma habitual es Integer.A typical value to specify is Integer.

Devoluciones

Entero sin signo de 64 bits equivalente al número especificado en s.A 64-bit unsigned integer equivalent to the number specified in s.

Atributos

Excepciones

El parámetro s es null.The s parameter is null.

style no es un valor NumberStyles.style is not a NumberStyles value.

O bien-or- style no es una combinación de valores AllowHexSpecifier y HexNumber.style is not a combination of AllowHexSpecifier and HexNumber values.

El parámetro s no está en un formato compatible con style.The s parameter is not in a format compliant with style.

El parámetro s representa un número menor que MinValue o mayor que MaxValue.The s parameter represents a number less than MinValue or greater than MaxValue.

O bien-or- s incluye dígitos fraccionarios distintos de cero.s includes non-zero, fractional digits.

Ejemplos

En el ejemplo siguiente se intenta analizar cada elemento de una matriz de cadenas mediante una serie NumberStyles de valores.The following example tries to parse each element in a string array by using a number of NumberStyles values.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string[] values= { " 214309 ", "1,064,181", "(0)", "10241+", " + 21499 ", 
                         " +21499 ", "122153.00", "1e03ff", "91300.0e-2" };
      NumberStyles whitespace =  NumberStyles.AllowLeadingWhite | NumberStyles.AllowTrailingWhite;
      NumberStyles[] styles= { NumberStyles.None, whitespace, 
                               NumberStyles.AllowLeadingSign | NumberStyles.AllowTrailingSign | whitespace, 
                               NumberStyles.AllowThousands | NumberStyles.AllowCurrencySymbol, 
                               NumberStyles.AllowExponent | NumberStyles.AllowDecimalPoint };

      // Attempt to convert each number using each style combination.
      foreach (string value in values)
      {
         Console.WriteLine("Attempting to convert '{0}':", value);
         foreach (NumberStyles style in styles)
         {
            try {
               ulong number = UInt64.Parse(value, style);
               Console.WriteLine("   {0}: {1}", style, number);
            }   
            catch (FormatException) {
               Console.WriteLine("   {0}: Bad Format", style);
            }   
            catch (OverflowException)
            {
               Console.WriteLine("   {0}: Overflow", value);         
            }         
         }
         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//    Attempting to convert ' 214309 ':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: 214309
//       Integer, AllowTrailingSign: 214309
//       AllowThousands, AllowCurrencySymbol: Bad Format
//       AllowDecimalPoint, AllowExponent: Bad Format
//    
//    Attempting to convert '1,064,181':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: Bad Format
//       Integer, AllowTrailingSign: Bad Format
//       AllowThousands, AllowCurrencySymbol: 1064181
//       AllowDecimalPoint, AllowExponent: Bad Format
//    
//    Attempting to convert '(0)':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: Bad Format
//       Integer, AllowTrailingSign: Bad Format
//       AllowThousands, AllowCurrencySymbol: Bad Format
//       AllowDecimalPoint, AllowExponent: Bad Format
//    
//    Attempting to convert '10241+':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: Bad Format
//       Integer, AllowTrailingSign: 10241
//       AllowThousands, AllowCurrencySymbol: Bad Format
//       AllowDecimalPoint, AllowExponent: Bad Format
//    
//    Attempting to convert ' + 21499 ':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: Bad Format
//       Integer, AllowTrailingSign: Bad Format
//       AllowThousands, AllowCurrencySymbol: Bad Format
//       AllowDecimalPoint, AllowExponent: Bad Format
//    
//    Attempting to convert ' +21499 ':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: Bad Format
//       Integer, AllowTrailingSign: 21499
//       AllowThousands, AllowCurrencySymbol: Bad Format
//       AllowDecimalPoint, AllowExponent: Bad Format
//    
//    Attempting to convert '122153.00':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: Bad Format
//       Integer, AllowTrailingSign: Bad Format
//       AllowThousands, AllowCurrencySymbol: Bad Format
//       AllowDecimalPoint, AllowExponent: 122153
//    
//    Attempting to convert '1e03ff':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: Bad Format
//       Integer, AllowTrailingSign: Bad Format
//       AllowThousands, AllowCurrencySymbol: Bad Format
//       AllowDecimalPoint, AllowExponent: Bad Format
//    
//    Attempting to convert '91300.0e-2':
//       None: Bad Format
//       AllowLeadingWhite, AllowTrailingWhite: Bad Format
//       Integer, AllowTrailingSign: Bad Format
//       AllowThousands, AllowCurrencySymbol: Bad Format
//       AllowDecimalPoint, AllowExponent: 913
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim values() As String = { " 214309 ", "1,064,181", "(0)", "10241+", _
                                 " + 21499 ", " +21499 ", "122153.00", _
                                 "1e03ff", "91300.0e-2" }
      Dim whitespace As NumberStyles =  NumberStyles.AllowLeadingWhite Or NumberStyles.AllowTrailingWhite
      Dim styles() As NumberStyles = { NumberStyles.None, _
                                       whitespace, _
                                       NumberStyles.AllowLeadingSign Or NumberStyles.AllowTrailingSign Or whitespace, _
                                       NumberStyles.AllowThousands Or NumberStyles.AllowCurrencySymbol, _
                                       NumberStyles.AllowExponent Or NumberStyles.AllowDecimalPoint }

      ' Attempt to convert each number using each style combination.
      For Each value As String In values
         Console.WriteLine("Attempting to convert '{0}':", value)
         For Each style As NumberStyles In styles
            Try
               Dim number As ULong = UInt64.Parse(value, style)
               Console.WriteLine("   {0}: {1}", style, number)
            Catch e As FormatException
               Console.WriteLine("   {0}: Bad Format", style)
            Catch e As OverflowException
               Console.WriteLine("   {0}: Overflow", value)         
            End Try         
         Next
         Console.WriteLine()
      Next
   End Sub
End Module
' The example displays the following output:
'    Attempting to convert ' 214309 ':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: 214309
'       Integer, AllowTrailingSign: 214309
'       AllowThousands, AllowCurrencySymbol: Bad Format
'       AllowDecimalPoint, AllowExponent: Bad Format
'    
'    Attempting to convert '1,064,181':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: Bad Format
'       Integer, AllowTrailingSign: Bad Format
'       AllowThousands, AllowCurrencySymbol: 1064181
'       AllowDecimalPoint, AllowExponent: Bad Format
'    
'    Attempting to convert '(0)':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: Bad Format
'       Integer, AllowTrailingSign: Bad Format
'       AllowThousands, AllowCurrencySymbol: Bad Format
'       AllowDecimalPoint, AllowExponent: Bad Format
'    
'    Attempting to convert '10241+':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: Bad Format
'       Integer, AllowTrailingSign: 10241
'       AllowThousands, AllowCurrencySymbol: Bad Format
'       AllowDecimalPoint, AllowExponent: Bad Format
'    
'    Attempting to convert ' + 21499 ':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: Bad Format
'       Integer, AllowTrailingSign: Bad Format
'       AllowThousands, AllowCurrencySymbol: Bad Format
'       AllowDecimalPoint, AllowExponent: Bad Format
'    
'    Attempting to convert ' +21499 ':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: Bad Format
'       Integer, AllowTrailingSign: 21499
'       AllowThousands, AllowCurrencySymbol: Bad Format
'       AllowDecimalPoint, AllowExponent: Bad Format
'    
'    Attempting to convert '122153.00':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: Bad Format
'       Integer, AllowTrailingSign: Bad Format
'       AllowThousands, AllowCurrencySymbol: Bad Format
'       AllowDecimalPoint, AllowExponent: 122153
'    
'    Attempting to convert '1e03ff':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: Bad Format
'       Integer, AllowTrailingSign: Bad Format
'       AllowThousands, AllowCurrencySymbol: Bad Format
'       AllowDecimalPoint, AllowExponent: Bad Format
'    
'    Attempting to convert '91300.0e-2':
'       None: Bad Format
'       AllowLeadingWhite, AllowTrailingWhite: Bad Format
'       Integer, AllowTrailingSign: Bad Format
'       AllowThousands, AllowCurrencySymbol: Bad Format
'       AllowDecimalPoint, AllowExponent: 913

Comentarios

El style parámetro define los elementos de estilo (como el espacio en blanco, el símbolo de signo positivo o negativo, el símbolo de separador de grupo o el símbolo de separador decimal) que se permiten en el s parámetro para que la operación de análisis se realice correctamente.The style parameter defines the style elements (such as white space, the positive or negative sign symbol, the group separator symbol, or the decimal point symbol) that are allowed in the s parameter for the parse operation to succeed. styledebe ser una combinación de marcas de bits de NumberStyles la enumeración.style must be a combination of bit flags from the NumberStyles enumeration. El style parámetro hace que esta sobrecarga de método s resulte útil cuando contiene la representación de cadena de un valor hexadecimal, cuando el sistema de números ( s decimal o hexadecimal) representado por solo se conoce en tiempo de ejecución, o cuando se desea impedir el espacio en blanco o un símbolo de signo sen.The style parameter makes this method overload useful when s contains the string representation of a hexadecimal value, when the number system (decimal or hexadecimal) represented by s is known only at run time, or when you want to disallow white space or a sign symbol in s.

Dependiendo del valor de style, el s parámetro puede incluir los siguientes elementos:Depending on the value of style, the s parameter may include the following elements:

[ws][$][sign][digits,]digits[.fractional_digits][E[sign]exponential_digits][ws][ws][$][sign][digits,]digits[.fractional_digits][E[sign]exponential_digits][ws]

Los elementos de los corchetes ([ y ]) son opcionales.Elements in square brackets ([ and ]) are optional. Si style incluye NumberStyles.AllowHexSpecifier, els parámetro puede contener los elementos siguientes:If style includes NumberStyles.AllowHexSpecifier, the s parameter may contain the following elements:

[WS] hexdigits [WS][ws]hexdigits[ws]

En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
wsws Espacio en blanco opcional.Optional white space. Puede aparecer un espacio en blanco al principio s de style si incluye NumberStyles.AllowLeadingWhite la marca y puede aparecer al final de s si style incluye la NumberStyles.AllowTrailingWhite marca.White space can appear at the start of s if style includes the NumberStyles.AllowLeadingWhite flag, and it can appear at the end of s if style includes the NumberStyles.AllowTrailingWhite flag.
$ Un símbolo de divisa específico de la referencia cultural.A culture-specific currency symbol. Su posición en la cadena se define mediante las NumberFormatInfo.CurrencyNegativePattern propiedades NumberFormatInfo.CurrencyPositivePattern y de la referencia cultural actual.Its position in the string is defined by the NumberFormatInfo.CurrencyNegativePattern and NumberFormatInfo.CurrencyPositivePattern properties of the current culture. El símbolo de divisa de la referencia cultural actual s puede style aparecer en NumberStyles.AllowCurrencySymbol si incluye la marca.The current culture's currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Un signo opcional.An optional sign. El signo puede aparecer al principio de s si style incluye la NumberStyles.AllowLeadingSign marca y puede aparecer al final de s si style incluye la NumberStyles.AllowTrailingSign marca.The sign can appear at the start of s if style includes the NumberStyles.AllowLeadingSign flag, and it can appear at the end of s if style includes the NumberStyles.AllowTrailingSign flag. Los paréntesis se pueden usar en s para indicar un valor negativo si style incluye la NumberStyles.AllowParentheses marca.Parentheses can be used in s to indicate a negative value if style includes the NumberStyles.AllowParentheses flag. Sin embargo, el símbolo de signo negativo solo se puede usar con cero; de lo contrario, el método produce OverflowExceptionuna excepción.However, the negative sign symbol can be used only with zero; otherwise, the method throws an OverflowException.
digitsdigits

fractional_digitsfractional_digits

exponential_digitsexponential_digits
Secuencia de dígitos del 0 al 9.A sequence of digits from 0 through 9. En el caso de dígitos fraccionarios, solo el dígito 0 es válido.For fractional_digits, only the digit 0 is valid.
,, Un símbolo de separador de grupos específico de la referencia cultural.A culture-specific group separator symbol. El separador de grupos de la referencia cultural s actual style puede aparecer NumberStyles.AllowThousands en si incluye la marca.The current culture's group separator can appear in s if style includes the NumberStyles.AllowThousands flag.
.. Un símbolo de separador decimal específico de la referencia cultural.A culture-specific decimal point symbol. El símbolo de separador decimal de la referencia s cultural style actual puede NumberStyles.AllowDecimalPoint aparecer en si incluye la marca.The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag. Solo el dígito 0 puede aparecer como dígito fraccionario para que la operación de análisis se realice correctamente; Si dígitos fraccionarios incluye cualquier otro dígito FormatException , se produce una excepción.Only the digit 0 can appear as a fractional digit for the parse operation to succeed; if fractional_digits includes any other digit, a FormatException is thrown.
EE El carácter "e" o "E", que indica que el valor se representa en notación exponencial (científica).The "e" or "E" character, which indicates that the value is represented in exponential (scientific) notation. El s parámetro puede representar un número en notación exponencial si style incluye la NumberStyles.AllowExponent marca.The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
hexdigitshexdigits Secuencia de dígitos hexadecimales de 0 a f, o de 0 a F.A sequence of hexadecimal digits from 0 through f, or 0 through F.

Nota

Los caracteres NUL de terminación (U + 0000) s de se omiten en la operación de análisis, independientemente del valor style del argumento.Any terminating NUL (U+0000) characters in s are ignored by the parsing operation, regardless of the value of the style argument.

Una cadena solo con dígitos (que corresponde al NumberStyles.None estilo) siempre se analiza correctamente.A string with digits only (which corresponds to the NumberStyles.None style) always parses successfully. La mayoría de los NumberStyles miembros restantes controlan los elementos que pueden estar presentes, pero que no es necesario que estén presentes, en la cadena de entrada.Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in the input string. En la tabla siguiente se indica NumberStyles cómo afectan los miembros individuales a los elementos que spueden estar presentes en.The following table indicates how individual NumberStyles members affect the elements that may be present in s.

Valor deNumberStylesNumberStyles value Elementos permitidos s en además de dígitosElements permitted in s in addition to digits
None Solo ** el elemento digits.The digits element only.
AllowDecimalPoint Los elementos de separador decimal (.) y dígitos fraccionarios .The decimal point (.) and fractional-digits elements.
AllowExponent El carácter "e" o "E", que indica la notación exponencial, junto con exponential_digits.The "e" or "E" character, which indicates exponential notation, along with exponential_digits.
AllowLeadingWhite Elemento WS al principio de s.The ws element at the start of s.
AllowTrailingWhite Elemento WS al final de s.The ws element at the end of s.
AllowLeadingSign Elemento Sign situado al principio de s.The sign element at the start of s.
AllowTrailingSign El elemento Sign al final de s.The sign element at the end of s.
AllowParentheses El elemento Sign en el formato de paréntesis que rodea el valor numérico.The sign element in the form of parentheses enclosing the numeric value.
AllowThousands El elemento separador de grupos (,).The group separator (,) element.
AllowCurrencySymbol El elemento Currency ($).The currency ($) element.
Currency Todos los elementos.All elements. Sin embargo s , no puede representar un número hexadecimal o un número en notación exponencial.However, s cannot represent a hexadecimal number or a number in exponential notation.
Float El elemento WS al principio o al final de s, signo en el inicio de sy el símbolo de separador decimal (.).The ws element at the start or end of s, sign at the start of s, and the decimal point (.) symbol. El s parámetro también puede usar la notación exponencial.The s parameter can also use exponential notation.
Number Los wselementos sign,, separador de grupos (,) y separador decimal (.).The ws, sign, group separator (,), and decimal point (.) elements.
Any Todos los elementos.All elements. Sin embargo s , no puede representar un número hexadecimal.However, s cannot represent a hexadecimal number.

A diferencia de los NumberStyles demás valores, que permiten, pero no requieren, la presencia de elementos de estilo concretos en s, el NumberStyles.AllowHexSpecifier valor de estilo significa que los caracteres numéricos s individuales de se interpretan siempre como caracteres hexadecimales.Unlike the other NumberStyles values, which allow for, but do not require, the presence of particular style elements in s, the NumberStyles.AllowHexSpecifier style value means that the individual numeric characters in s are always interpreted as hexadecimal characters. Los caracteres hexadecimales válidos son 0-9, A-F y a-F.Valid hexadecimal characters are 0-9, A-F, and a-f. No se admite un prefijo como "0x" y hace que se produzca un error en la operación de análisis.A prefix such as "0x" is not supported and causes the parse operation to fail. Las demás marcas que se pueden combinar con el style parámetro son NumberStyles.AllowLeadingWhite y NumberStyles.AllowTrailingWhite.The only other flags that can be combined with the style parameter are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (La NumberStyles enumeración incluye un estilo de número NumberStyles.HexNumbercompuesto,, que incluye ambas marcas de espacio en blanco).(The NumberStyles enumeration includes a composite number style, NumberStyles.HexNumber, that includes both white-space flags.)

Nota

Si s es la representación de cadena de un número hexadecimal, no puede ir precedida de ninguna decoración ( 0x como o &h) que la diferencie como un número hexadecimal.If s is the string representation of a hexadecimal number, it cannot be preceded by any decoration (such as 0x or &h) that differentiates it as a hexadecimal number. Esto hace que se produzca un error en la conversión.This causes the conversion to fail.

El s parámetro se analiza utilizando la información de formato de un NumberFormatInfo objeto que se inicializa para la referencia cultural del sistema actual.The s parameter is parsed by using the formatting information in a NumberFormatInfo object that is initialized for the current system culture. Para especificar la referencia cultural cuya información de formato se utiliza para la operación de análisis Parse(String, NumberStyles, IFormatProvider) , llame a la sobrecarga.To specify the culture whose formatting information is used for the parse operation, call the Parse(String, NumberStyles, IFormatProvider) overload.

Consulte también:

Parse(String)

Importante

Esta API no es conforme a CLS.

Alternativa conforme a CLS
System.Decimal.Parse(String)

Convierte la representación en forma de cadena de un número en el entero de 64 bits sin signo equivalente.Converts the string representation of a number to its 64-bit unsigned integer equivalent.

public:
 static System::UInt64 Parse(System::String ^ s);
[System.CLSCompliant(false)]
public static ulong Parse (string s);
static member Parse : string -> uint64
Public Shared Function Parse (s As String) As ULong

Parámetros

s
String

Una cadena que representa el número que se va a convertir.A string that represents the number to convert.

Devoluciones

Entero sin signo de 64 bits equivalente al número incluido en s.A 64-bit unsigned integer equivalent to the number contained in s.

Atributos

Excepciones

El parámetro s es null.The s parameter is null.

El parámetro s no tiene el formato correcto.The s parameter is not in the correct format.

El parámetro s representa un número menor que MinValue o mayor que MaxValue.The s parameter represents a number less than MinValue or greater than MaxValue.

Ejemplos

En el ejemplo siguiente se Parse usa el método para analizar una matriz de valores de cadena.The following example uses the Parse method to parse an array of string values.

string[] values = { "+13230", "-0", "1,390,146", "$190,235,421,127",
                    "0xFA1B", "163042", "-10", "14065839182",
                    "16e07", "134985.0", "-12034" };
foreach (string value in values)
{
   try {
      ulong number = UInt64.Parse(value); 
      Console.WriteLine("{0} --> {1}", value, number);
   }
   catch (FormatException) {
      Console.WriteLine("{0}: Bad Format", value);
   }   
   catch (OverflowException) {
      Console.WriteLine("{0}: Overflow", value);   
   }  
}
// The example displays the following output:
//       +13230 --> 13230
//       -0 --> 0
//       1,390,146: Bad Format
//       $190,235,421,127: Bad Format
//       0xFA1B: Bad Format
//       163042 --> 163042
//       -10: Overflow
//       14065839182 --> 14065839182
//       16e07: Bad Format
//       134985.0: Bad Format
//       -12034: Overflow
Dim values() As String = { "+13230", "-0", "1,390,146", "$190,235,421,127", _
                           "0xFA1B", "163042", "-10", "14065839182", _
                           "16e07", "134985.0", "-12034" }
For Each value As String In values
   Try
      Dim number As ULong = UInt64.Parse(value) 
      Console.WriteLine("{0} --> {1}", value, number)
   Catch e As FormatException
      Console.WriteLine("{0}: Bad Format", value)
   Catch e As OverflowException
      Console.WriteLine("{0}: Overflow", value)   
   End Try  
Next
' The example displays the following output:
'       +13230 --> 13230
'       -0 --> 0
'       1,390,146: Bad Format
'       $190,235,421,127: Bad Format
'       0xFA1B: Bad Format
'       163042 --> 163042
'       -10: Overflow
'       14065839182 --> 14065839182
'       16e07: Bad Format
'       134985.0: Bad Format
'       -12034: Overflow

Comentarios

El s parámetro debe ser la representación de cadena de un número con el formato siguiente.The s parameter should be the string representation of a number in the following form.

[WS] [signo] dígitos [WS][ws][sign]digits[ws]

Los elementos de los corchetes ([ y ]) son opcionales.Elements in square brackets ([ and ]) are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
wsws Espacio en blanco opcional.Optional white space.
signsign Un signo opcional.An optional sign. Los caracteres de signo válidos se NumberFormatInfo.NegativeSign determinan mediante las propiedades y NumberFormatInfo.PositiveSign de la referencia cultural actual.Valid sign characters are determined by the NumberFormatInfo.NegativeSign and NumberFormatInfo.PositiveSign properties of the current culture. Sin embargo, el símbolo de signo negativo solo se puede usar con cero; de lo contrario, el método produce OverflowExceptionuna excepción.However, the negative sign symbol can be used only with zero; otherwise, the method throws an OverflowException.
digitsdigits Secuencia de dígitos que comprende del 0 al 9.A sequence of digits ranging from 0 to 9. Se omiten los ceros a la izquierda.Any leading zeros are ignored.

Nota

La cadena especificada por el s parámetro se interpreta utilizando el NumberStyles.Integer estilo.The string specified by the s parameter is interpreted by using the NumberStyles.Integer style. No puede contener ningún separador de grupo ni separador decimal, y no puede tener una parte decimal.It cannot contain any group separators or decimal separator, and it cannot have a decimal portion.

El s parámetro se analiza utilizando la información de formato de un System.Globalization.NumberFormatInfo objeto que se inicializa para la referencia cultural del sistema actual.The s parameter is parsed by using the formatting information in a System.Globalization.NumberFormatInfo object that is initialized for the current system culture. Para obtener más información, vea NumberFormatInfo.CurrentInfo.For more information, see NumberFormatInfo.CurrentInfo. Para analizar una cadena utilizando la información de formato de una referencia cultural concreta, use Parse(String, IFormatProvider) el método.To parse a string by using the formatting information of a specific culture, use the Parse(String, IFormatProvider) method.

Consulte también:

Parse(String, IFormatProvider)

Importante

Esta API no es conforme a CLS.

Alternativa conforme a CLS
System.Decimal.Parse(String)

Convierte la representación en forma de cadena de un número con el formato específico de la referencia cultural que se haya especificado en el entero de 64 bits sin signo equivalente.Converts the string representation of a number in a specified culture-specific format to its 64-bit unsigned integer equivalent.

public:
 static System::UInt64 Parse(System::String ^ s, IFormatProvider ^ provider);
[System.CLSCompliant(false)]
public static ulong Parse (string s, IFormatProvider provider);
static member Parse : string * IFormatProvider -> uint64
Public Shared Function Parse (s As String, provider As IFormatProvider) As ULong

Parámetros

s
String

Una cadena que representa el número que se va a convertir.A string that represents the number to convert.

provider
IFormatProvider

Objeto que proporciona información de formato específica de la referencia cultural acerca de s.An object that supplies culture-specific formatting information about s.

Devoluciones

Entero sin signo de 64 bits equivalente al número especificado en s.A 64-bit unsigned integer equivalent to the number specified in s.

Atributos

Excepciones

El parámetro s es null.The s parameter is null.

El parámetro s no tiene el estilo correcto.The s parameter is not in the correct style.

El parámetro s representa un número menor que MinValue o mayor que MaxValue.The s parameter represents a number less than MinValue or greater than MaxValue.

Ejemplos

El ejemplo siguiente es el controlador de eventos de clic de botón de un formulario Web Forms.The following example is the button click event handler of a Web form. Usa la matriz devuelta por la HttpRequest.UserLanguages propiedad para determinar la configuración regional del usuario.It uses the array returned by the HttpRequest.UserLanguages property to determine the user's locale. A continuación, crea una CultureInfo instancia de un objeto que corresponde a esa configuración regional.It then instantiates a CultureInfo object that corresponds to that locale. A NumberFormatInfo continuación, el objeto que CultureInfo pertenece a ese objeto Parse(String, IFormatProvider) se pasa al método para convertir la entrada del usuario en UInt64 un valor.The NumberFormatInfo object that belongs to that CultureInfo object is then passed to the Parse(String, IFormatProvider) method to convert the user's input to a UInt64 value.

protected void OkToSingle_Click(object sender, EventArgs e)
{
   string locale;
   float number;
   CultureInfo culture; 

   // Return if string is empty
   if (String.IsNullOrEmpty(this.inputNumber.Text))
      return;

   // Get locale of web request to determine possible format of number
   if (Request.UserLanguages.Length == 0)
      return;
   locale = Request.UserLanguages[0];
   if (String.IsNullOrEmpty(locale))
      return; 

   // Instantiate CultureInfo object for the user's locale
   culture = new CultureInfo(locale);
   
   // Convert user input from a string to a number
   try
   {
      number = Single.Parse(this.inputNumber.Text, culture.NumberFormat);
   }
   catch (FormatException)
   {
      return;
   }
   catch (Exception)
   {
      return;
   }
   // Output number to label on web form
   this.outputNumber.Text = "Number is " + number.ToString();
}
Protected Sub OkToSingle_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles OkToSingle.Click
   Dim locale As String
   Dim culture As CultureInfo
   Dim number As Single

   ' Return if string is empty
   If String.IsNullOrEmpty(Me.inputNumber.Text) Then Exit Sub

   ' Get locale of web request to determine possible format of number
   If Request.UserLanguages.Length = 0 Then Exit Sub
   locale = Request.UserLanguages(0)
   If String.IsNullOrEmpty(locale) Then Exit Sub

   ' Instantiate CultureInfo object for the user's locale
   culture = New CultureInfo(locale)

   ' Convert user input from a string to a number
   Try
      number = Single.Parse(Me.inputNumber.Text, culture.NumberFormat)
   Catch ex As FormatException
      Exit Sub
   Catch ex As OverflowException
      Exit Sub
   End Try

   ' Output number to label on web form
   Me.outputNumber.Text = "Number is " & number.ToString()
End Sub

Comentarios

Esta sobrecarga del Parse(String, IFormatProvider) método se usa normalmente para convertir texto al que se puede dar formato de varias maneras a un UInt64 valor.This overload of the Parse(String, IFormatProvider) method is typically used to convert text that can be formatted in a variety of ways to a UInt64 value. Por ejemplo, se puede usar para convertir el texto escrito por un usuario en un cuadro de texto HTML en un valor numérico.For example, it can be used to convert the text entered by a user into an HTML text box to a numeric value.

El s parámetro contiene un número de la forma:The s parameter contains a number of the form:

WS [signo] dígitos [ws][ws][sign]digits[ws]

Los elementos entre corchetes ([y]) son opcionales.Items in square brackets ([ and ]) are optional. En esta tabla se describe cada elemento.The following table describes each element.

ElementoElement DescripciónDescription
wsws Espacio en blanco opcional.Optional white space.
signsign Un signo positivo opcional o un signo negativo si s representa el valor cero.An optional positive sign, or a negative sign if s represents the value zero.
digitsdigits Secuencia de dígitos que comprende del 0 al 9.A sequence of digits ranging from 0 to 9.

El parámetro s se interpreta usando el NumberStyles.Integer estilo.The s parameter is interpreted using the NumberStyles.Integer style. Además de los dígitos decimales del valor entero sin signo, solo se permiten los espacios iniciales y finales junto con un signo inicial.In addition to the unsigned integer value's decimal digits, only leading and trailing spaces along with a leading sign is allowed. (Si el signo negativo está presente, s debe representar un valor cero o el método produce una OverflowExceptionexcepción). Para definir explícitamente los elementos de estilo junto con la información de formato específica de la referencia cultural sque puede estar Parse(String, NumberStyles, IFormatProvider) presente en, use el método.(If the negative sign is present, s must represent a value of zero, or the method throws an OverflowException.) To explicitly define the style elements together with the culture-specific formatting information that can be present in s, use the Parse(String, NumberStyles, IFormatProvider) method.

El provider parámetro es una IFormatProvider implementación de GetFormat cuyo método devuelve NumberFormatInfo un objeto que proporciona información específica de la referencia cultural acerca sdel formato de.The provider parameter is an IFormatProvider implementation whose GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of s. Hay tres maneras de usar el provider parámetro para proporcionar información de formato personalizada a la operación de análisis:There are three ways to use the provider parameter to supply custom formatting information to the parse operation:

  • Puede pasar el objeto real NumberFormatInfo que proporciona información de formato.You can pass the actual NumberFormatInfo object that provides formatting information. (Su implementación de GetFormat simplemente se devuelve).(Its implementation of GetFormat simply returns itself.)

  • Puede pasar un CultureInfo objeto que especifica la referencia cultural cuyo formato se va a utilizar.You can pass a CultureInfo object that specifies the culture whose formatting is to be used. Su NumberFormat propiedad proporciona información de formato.Its NumberFormat property provides formatting information.

  • Puede pasar una implementación personalizada IFormatProvider .You can pass a custom IFormatProvider implementation. Su GetFormat método debe crear instancias y devolver el NumberFormatInfo objeto que proporciona información de formato.Its GetFormat method must instantiate and return the NumberFormatInfo object that provides formatting information.

Si provider es null ,NumberFormatInfo se utiliza para la referencia cultural actual.If provider is null, the NumberFormatInfo for the current culture is used.

Consulte también:

Se aplica a