UInt64.Parse メソッド

定義

数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。Converts the string representation of a number to its 64-bit unsigned integer equivalent.

オーバーロード

Parse(String, NumberStyles, IFormatProvider)

指定したスタイルおよびカルチャ固有の書式による数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。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)

指定したスタイルおよびカルチャ固有の書式による数値のスパン表現を、等価の 64 ビット符号なし整数に変換します。Converts the span representation of a number in a specified style and culture-specific format to its 64-bit unsigned integer equivalent.

Parse(String, NumberStyles)

指定したスタイルの数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。Converts the string representation of a number in a specified style to its 64-bit unsigned integer equivalent.

Parse(String)

数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。Converts the string representation of a number to its 64-bit unsigned integer equivalent.

Parse(String, IFormatProvider)

指定したカルチャ固有の書式による数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。Converts the string representation of a number in a specified culture-specific format to its 64-bit unsigned integer equivalent.

Parse(String, NumberStyles, IFormatProvider)

重要

この API は CLS 準拠ではありません。

CLS 準拠の代替
System.Decimal.Parse(String)

指定したスタイルおよびカルチャ固有の書式による数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。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

パラメーター

s
String

変換する数値を表す文字列。A string that represents the number to convert. 文字列は、style パラメーターで指定されたスタイルを使用して解釈されます。The string is interpreted by using the style specified by the style parameter.

style
NumberStyles

s で存在する可能性を持つスタイル要素を示す、列挙値のビットごとの組み合わせ。A bitwise combination of enumeration values that indicates the style elements that can be present in s. 通常指定する値は、Integer です。A typical value to specify is Integer.

provider
IFormatProvider

s に関するカルチャ固有の書式情報を提供するオブジェクト。An object that supplies culture-specific formatting information about s.

戻り値

s で指定した数値と等しい 64 ビット符号なし整数。A 64-bit unsigned integer equivalent to the number specified in s.

属性

例外

s パラメーターが null です。The s parameter is null.

styleNumberStyles 値ではありません。style is not a NumberStyles value.

- または --or- styleAllowHexSpecifier 値と HexNumber 値の組み合わせではありません。style is not a combination of AllowHexSpecifier and HexNumber values.

s パラメーターの形式が style に準拠していません。The s parameter is not in a format compliant with style.

s パラメーターが、MinValue 未満の数値か、MaxValue より大きい数値を表しています。The s parameter represents a number less than MinValue or greater than MaxValue.

- または --or- s に 0 以外の小数部の桁が含まれています。s includes non-zero, fractional digits.

次の例では、Parse(String, NumberStyles, IFormatProvider) メソッドを使用して、数値のさまざまな文字列形式を64ビット符号なし整数値に変換します。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.

注釈

style パラメーターは、解析操作を成功させるために s パラメーターで使用できるスタイル要素 (空白、正または負の記号など) を定義します。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. NumberStyles 列挙体のビットフラグの組み合わせである必要があります。It must be a combination of bit flags from the NumberStyles enumeration.

styleの値に応じて、s パラメーターには次の要素を含めることができます。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]

角かっこ ([ および ]) 内の要素は省略可能です。Elements in square brackets ([ and ]) are optional. styleNumberStyles.AllowHexSpecifierが含まれている場合、s パラメーターには次の要素を含めることができます。If style includes NumberStyles.AllowHexSpecifier, the s parameter may include the following elements:

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

次の表は、それぞれの要素の説明です。The following table describes each element.

要素Element 説明Description
wsws 省略可能な空白。Optional white space. styleNumberStyles.AllowLeadingWhite フラグが含まれている場合、s の先頭に空白が表示され、styleNumberStyles.AllowTrailingWhite フラグが含まれている場合、s の最後に表示されることがあります。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.
$ カルチャ固有の通貨記号。A culture-specific currency symbol. 文字列内の位置は、provider パラメーターの GetFormat メソッドによって返される NumberFormatInfo オブジェクトの CurrencyPositivePattern プロパティによって定義されます。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. 通貨記号は、styleNumberStyles.AllowCurrencySymbol フラグが含まれている場合に s に表示されます。The currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign 省略可能な符号。An optional sign. (s 負の符号を含み、0以外の数値を表す場合、メソッドは OverflowException をスローします)。styleNumberStyles.AllowLeadingSign フラグが含まれている場合、s の先頭に符号が表示されます。 styleNumberStyles.AllowTrailingSign フラグが含まれている場合は、s の最後に表示されます。(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. NumberStyles.AllowParentheses フラグが style 含まれている場合は、s でかっこを使用して負の値を示すことができます。Parentheses can be used in s to indicate a negative value if style includes the NumberStyles.AllowParentheses flag.
数字digits 0から9までの一連の数字。A sequence of digits from 0 through 9.
.. カルチャ固有の小数点の記号。A culture-specific decimal point symbol. 現在のカルチャの小数点の記号は、styleNumberStyles.AllowDecimalPoint フラグが含まれている場合に s に表示されます。The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits styleNumberStyles.AllowExponent フラグが含まれている場合は、数字0-9 が含まれる場合は1回以上の出現、そうでない場合は1回以上の数字0が発生します。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. 小数点以下の桁数は、styleNumberStyles.AllowDecimalPoint フラグが含まれている場合にのみ s に表示されます。Fractional digits can appear in s only if style includes the NumberStyles.AllowDecimalPoint flag.
EE "E" または "E" 文字。値が指数 (科学的) 表記で表されることを示します。The "e" or "E" character, which indicates that the value is represented in exponential (scientific) notation. s パラメーターは、styleNumberStyles.AllowExponent フラグが含まれている場合に指数表記で数値を表すことができます。The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
exponential_digitsexponential_digits 0から9までの一連の数字。A sequence of digits from 0 through 9. s パラメーターは、styleNumberStyles.AllowExponent フラグが含まれている場合に指数表記で数値を表すことができます。The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
hexdigitshexdigits 0から f、または0から F までの16進数のシーケンス。A sequence of hexadecimal digits from 0 through f, or 0 through F.

注意

s 内の終端の NUL (U + 0000) 文字は、style 引数の値に関係なく、解析操作によって無視されます。Any terminating NUL (U+0000) characters in s are ignored by the parsing operation, regardless of the value of the style argument.

10進数の数字のみを含む文字列 (NumberStyles.None スタイルに対応) は、常に正常に解析されます。A string with decimal digits only (which corresponds to the NumberStyles.None style) always parses successfully. 残りの NumberStyles メンバーのほとんどは、この入力文字列に存在する必要があるが必須ではない要素を制御します。Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in this input string. 次の表は、個々の NumberStyles メンバーが sに存在する可能性のある要素にどのように影響するかを示しています。The following table indicates how individual NumberStyles members affect the elements that may be present in s.

非複合 NumberStylesNon-composite NumberStyles values 数字に加えて s で許可される要素Elements permitted in s in addition to digits
NumberStyles.None 10進数のみ。Decimal digits only.
NumberStyles.AllowDecimalPoint 小数点 (.) とfractional_digits要素。The decimal point (.) and fractional_digits elements. ただし、style に NumberStyles.AllowExponent フラグが含まれていない場合、 fractional_digitsは1桁以上の0桁で構成されている必要があります。それ以外の場合は、OverflowException がスローされます。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 Exponential_digitsと共に指数表記を示す "e" または "e" 文字。The "e" or "E" character, which indicates exponential notation, along with exponential_digits.
NumberStyles.AllowLeadingWhite sの先頭にあるws要素。The ws element at the beginning of s.
NumberStyles.AllowTrailingWhite sの末尾のws要素。The ws element at the end of s.
NumberStyles.AllowLeadingSign 数字の前に符号を付けます。A sign before digits.
NumberStyles.AllowTrailingSign 数字の後に符号を付けます。A sign after digits.
NumberStyles.AllowParentheses 負の値を示す数字の前後のかっこ。Parentheses before and after digits to indicate a negative value.
NumberStyles.AllowThousands 桁区切り記号 (,) 要素。The group separator (,) element.
NumberStyles.AllowCurrencySymbol Currency ($) 要素。The currency ($) element.

NumberStyles.AllowHexSpecifier フラグが使用されている場合、s は16進数の値である必要があります。If the NumberStyles.AllowHexSpecifier flag is used, s must be a hexadecimal value. 有効な16進文字は、0-9、A-F、a-f です。Valid hexadecimal characters are 0-9, A-F, and a-f. "0x" のようなプレフィックスはサポートされていないため、解析操作は失敗します。A prefix such as "0x" is not supported and causes the parse operation to fail. 他のフラグと組み合わせて使用できるのは、NumberStyles.AllowLeadingWhiteNumberStyles.AllowTrailingWhiteだけです。The only other flags that can be combined with it are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (NumberStyles 列挙体には、2つの空白フラグを含む複合数値スタイル NumberStyles.HexNumberが含まれています)。(The NumberStyles enumeration includes a composite number style, NumberStyles.HexNumber, that includes both white-space flags.)

注意

s パラメーターが16進数の文字列形式の場合、16進数と区別する装飾 (0x&hなど) を前に付けることはできません。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. これにより、解析操作によって例外がスローされます。This causes the parse operation to throw an exception.

provider パラメーターは、GetFormat メソッドが sの形式に関するカルチャ固有の情報を提供する NumberFormatInfo オブジェクトを返す IFormatProvider の実装です。The provider parameter is an IFormatProvider implementation whose GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of s. provider パラメーターを使用して、解析操作にカスタム書式情報を提供するには、次の3つの方法があります。There are three ways to use the provider parameter to supply custom formatting information to the parse operation:

  • 書式設定情報を提供する実際の NumberFormatInfo オブジェクトを渡すことができます。You can pass the actual NumberFormatInfo object that provides formatting information. (GetFormat の実装では、単にそれ自体が返されます)。(Its implementation of GetFormat simply returns itself.)

  • 書式設定を使用するカルチャを指定する CultureInfo オブジェクトを渡すことができます。You can pass a CultureInfo object that specifies the culture whose formatting is to be used. NumberFormat プロパティは、書式設定情報を提供します。Its NumberFormat property provides formatting information.

  • カスタム IFormatProvider の実装を渡すことができます。You can pass a custom IFormatProvider implementation. GetFormat メソッドは、書式設定情報を提供する NumberFormatInfo オブジェクトをインスタンス化して返す必要があります。Its GetFormat method must instantiate and return the NumberFormatInfo object that provides formatting information.

providernull場合は、現在のカルチャの NumberFormatInfo オブジェクトが使用されます。If provider is null, the NumberFormatInfo object for the current culture is used.

こちらもご覧ください

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

重要

この API は CLS 準拠ではありません。

指定したスタイルおよびカルチャ固有の書式による数値のスパン表現を、等価の 64 ビット符号なし整数に変換します。Converts the span representation of a number in a specified style and culture-specific format to its 64-bit unsigned integer equivalent.

[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

パラメーター

s
ReadOnlySpan<Char>

変換する数値を表す文字を格納しているスパン。A span containing the characters that represent the number to convert. スパンは、style パラメーターで指定されたスタイルを使用して解釈されます。The span is interpreted by using the style specified by the style parameter.

style
NumberStyles

s で存在する可能性を持つスタイル要素を示す、列挙値のビットごとの組み合わせ。A bitwise combination of enumeration values that indicates the style elements that can be present in s. 通常指定する値は、Integer です。A typical value to specify is Integer.

provider
IFormatProvider

s に関するカルチャ固有の書式情報を提供するオブジェクト。An object that supplies culture-specific formatting information about s.

戻り値

s で指定した数値と等しい 64 ビット符号なし整数。A 64-bit unsigned integer equivalent to the number specified in s.

属性

Parse(String, NumberStyles)

重要

この API は CLS 準拠ではありません。

CLS 準拠の代替
System.Decimal.Parse(String)

指定したスタイルの数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。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

パラメーター

s
String

変換する数値を表す文字列。A string that represents the number to convert. 文字列は、style パラメーターで指定されたスタイルを使用して解釈されます。The string is interpreted by using the style specified by the style parameter.

style
NumberStyles

s に許可されている書式を指定する列挙値のビットごとの組み合わせ。A bitwise combination of the enumeration values that specifies the permitted format of s. 通常指定する値は、Integer です。A typical value to specify is Integer.

戻り値

s で指定した数値と等しい 64 ビット符号なし整数。A 64-bit unsigned integer equivalent to the number specified in s.

属性

例外

s パラメーターが null です。The s parameter is null.

styleNumberStyles 値ではありません。style is not a NumberStyles value.

- または --or- styleAllowHexSpecifier 値と HexNumber 値の組み合わせではありません。style is not a combination of AllowHexSpecifier and HexNumber values.

s パラメーターの形式が style に準拠していません。The s parameter is not in a format compliant with style.

s パラメーターが、MinValue 未満の数値か、MaxValue より大きい数値を表しています。The s parameter represents a number less than MinValue or greater than MaxValue.

- または --or- s に 0 以外の小数部の桁が含まれています。s includes non-zero, fractional digits.

次の例では、複数の NumberStyles 値を使用して、文字列配列内の各要素の解析を試みます。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

注釈

style パラメーターは、解析操作を成功させるために、s パラメーターで使用できるスタイル要素 (空白、正または負の記号、桁区切り記号、桁区切り記号、小数点の記号など) を定義します。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. style は、NumberStyles 列挙のビットフラグの組み合わせである必要があります。style must be a combination of bit flags from the NumberStyles enumeration. style パラメーターを使用すると、s に16進値の文字列形式が含まれている場合、s で表される数値システム (10 進数または16進数) が実行時にのみ認識される場合、または禁止する場合に、このメソッドのオーバーロードが役立ちます。sの空白または符号記号。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.

styleの値に応じて、s パラメーターには次の要素を含めることができます。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]

角かっこ ([ および ]) 内の要素は省略可能です。Elements in square brackets ([ and ]) are optional. styleNumberStyles.AllowHexSpecifierが含まれている場合、s パラメーターには次の要素を含めることができます。If style includes NumberStyles.AllowHexSpecifier, the s parameter may contain the following elements:

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

次の表は、それぞれの要素の説明です。The following table describes each element.

要素Element 説明Description
wsws 省略可能な空白。Optional white space. styleNumberStyles.AllowLeadingWhite フラグが含まれている場合、s の先頭に空白が表示され、styleNumberStyles.AllowTrailingWhite フラグが含まれている場合は s の最後に表示されます。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.
$ カルチャ固有の通貨記号。A culture-specific currency symbol. 文字列内での位置は、現在のカルチャの NumberFormatInfo.CurrencyNegativePattern および NumberFormatInfo.CurrencyPositivePattern プロパティによって定義されます。Its position in the string is defined by the NumberFormatInfo.CurrencyNegativePattern and NumberFormatInfo.CurrencyPositivePattern properties of the current culture. 現在のカルチャの通貨記号は、styleNumberStyles.AllowCurrencySymbol フラグが含まれている場合に s に表示されます。The current culture's currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign 省略可能な符号。An optional sign. NumberStyles.AllowLeadingSign フラグが style に含まれている場合、s の先頭に符号が表示されます。また、styleNumberStyles.AllowTrailingSign フラグが含まれている場合は、s の最後に表示されます。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. NumberStyles.AllowParentheses フラグが style 含まれている場合は、s でかっこを使用して負の値を示すことができます。Parentheses can be used in s to indicate a negative value if style includes the NumberStyles.AllowParentheses flag. ただし、負の記号はゼロでのみ使用できます。それ以外の場合、メソッドは OverflowExceptionをスローします。However, the negative sign symbol can be used only with zero; otherwise, the method throws an OverflowException.
数字digits

fractional_digitsfractional_digits

exponential_digitsexponential_digits
0から9までの一連の数字。A sequence of digits from 0 through 9. Fractional_digitsの場合は、数字0のみが有効です。For fractional_digits, only the digit 0 is valid.
, カルチャ固有のグループ区切り記号。A culture-specific group separator symbol. 現在のカルチャの区切り記号は、styleNumberStyles.AllowThousands フラグが含まれている場合に s に表示されます。The current culture's group separator can appear in s if style includes the NumberStyles.AllowThousands flag.
.. カルチャ固有の小数点の記号。A culture-specific decimal point symbol. 現在のカルチャの小数点の記号は、styleNumberStyles.AllowDecimalPoint フラグが含まれている場合に s に表示されます。The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag. 解析操作が成功するためには、数字0のみが小数点の数字として表示されます。fractional_digitsに他の数字が含まれている場合は、FormatException がスローされます。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 "E" または "E" 文字。値が指数 (科学的) 表記で表されることを示します。The "e" or "E" character, which indicates that the value is represented in exponential (scientific) notation. s パラメーターは、styleNumberStyles.AllowExponent フラグが含まれている場合に指数表記で数値を表すことができます。The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
hexdigitshexdigits 0から f、または0から F までの16進数のシーケンス。A sequence of hexadecimal digits from 0 through f, or 0 through F.

注意

s 内の終端の NUL (U + 0000) 文字は、style 引数の値に関係なく、解析操作によって無視されます。Any terminating NUL (U+0000) characters in s are ignored by the parsing operation, regardless of the value of the style argument.

数字のみを含む文字列 (NumberStyles.None スタイルに対応) は、UInt64 型の範囲内にある場合は、常に正常に解析されます。A string with digits only (which corresponds to the NumberStyles.None style) always parses successfully if it is in the range of the UInt64 type. 残りの NumberStyles メンバーのほとんどは、入力文字列に存在する必要があるが必須ではない要素を制御します。Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in the input string. 次の表は、個々の NumberStyles メンバーが sに存在する可能性のある要素にどのように影響するかを示しています。The following table indicates how individual NumberStyles members affect the elements that may be present in s.

NumberStyles の値NumberStyles value 数字に加えて s で許可される要素Elements permitted in s in addition to digits
None Digits要素のみ。The digits element only.
AllowDecimalPoint 小数点 (.) と小数部の桁の要素。The decimal point (.) and fractional-digits elements.
AllowExponent Exponential_digitsと共に指数表記を示す "e" または "e" 文字。The "e" or "E" character, which indicates exponential notation, along with exponential_digits.
AllowLeadingWhite sの先頭にあるws要素。The ws element at the start of s.
AllowTrailingWhite sの末尾のws要素。The ws element at the end of s.
AllowLeadingSign sの先頭にあるsign要素。The sign element at the start of s.
AllowTrailingSign sの末尾のsign要素。The sign element at the end of s.
AllowParentheses 数値を囲むかっこ形式のsign要素。The sign element in the form of parentheses enclosing the numeric value.
AllowThousands 桁区切り記号 (,) 要素。The group separator (,) element.
AllowCurrencySymbol Currency ($) 要素。The currency ($) element.
Currency すべての要素。All elements. ただし、s は、16進数または指数表記の数値を表すことはできません。However, s cannot represent a hexadecimal number or a number in exponential notation.
Float sの先頭または末尾にあるws要素、sの先頭に符号、小数点 (.) 記号。The ws element at the start or end of s, sign at the start of s, and the decimal point (.) symbol. s パラメーターでは、指数表記を使用することもできます。The s parameter can also use exponential notation.
Number wssign、桁区切り記号 (,)、および小数点 (.) 要素。The ws, sign, group separator (,), and decimal point (.) elements.
Any すべての要素。All elements. ただし、s は16進数を表すことはできません。However, s cannot represent a hexadecimal number.

sに特定のスタイル要素があるかどうかを指定できる他の NumberStyles 値とは異なり、NumberStyles.AllowHexSpecifier スタイル値は、s 内の個々の数字が常に16進数として解釈されることを意味します。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. 有効な16進文字は、0-9、A-F、a-f です。Valid hexadecimal characters are 0-9, A-F, and a-f. "0x" のようなプレフィックスはサポートされていないため、解析操作は失敗します。A prefix such as "0x" is not supported and causes the parse operation to fail. style パラメーターと組み合わせることができるフラグは、NumberStyles.AllowLeadingWhiteNumberStyles.AllowTrailingWhiteだけです。The only other flags that can be combined with the style parameter are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (NumberStyles 列挙体には、2つの空白フラグを含む複合数値スタイル NumberStyles.HexNumberが含まれています)。(The NumberStyles enumeration includes a composite number style, NumberStyles.HexNumber, that includes both white-space flags.)

注意

s が16進数の文字列表現である場合、16進数と区別する装飾 (0x&hなど) を前に付けることはできません。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. これにより、変換は失敗します。This causes the conversion to fail.

s パラメーターは、現在のシステムカルチャに対して初期化された NumberFormatInfo オブジェクトの書式情報を使用して解析されます。The s parameter is parsed by using the formatting information in a NumberFormatInfo object that is initialized for the current system culture. 解析操作に使用する書式設定情報を持つカルチャを指定するには、Parse(String, NumberStyles, IFormatProvider) オーバーロードを呼び出します。To specify the culture whose formatting information is used for the parse operation, call the Parse(String, NumberStyles, IFormatProvider) overload.

こちらもご覧ください

Parse(String)

重要

この API は CLS 準拠ではありません。

CLS 準拠の代替
System.Decimal.Parse(String)

数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。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

パラメーター

s
String

変換する数値を表す文字列。A string that represents the number to convert.

戻り値

s に格納されている数値と等しい 64 ビット符号なし整数。A 64-bit unsigned integer equivalent to the number contained in s.

属性

例外

s パラメーターが null です。The s parameter is null.

s パラメーターの形式が正しくありません。The s parameter is not in the correct format.

s パラメーターが、MinValue 未満の数値か、MaxValue より大きい数値を表しています。The s parameter represents a number less than MinValue or greater than MaxValue.

次の例では、Parse メソッドを使用して、文字列値の配列を解析します。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

注釈

s パラメーターは、次の形式の数値の文字列形式である必要があります。The s parameter should be the string representation of a number in the following form.

[ws][sign]digits[ws][ws][sign]digits[ws]

角かっこ ([ および ]) 内の要素は省略可能です。Elements in square brackets ([ and ]) are optional. 次の表は、それぞれの要素の説明です。The following table describes each element.

要素Element 説明Description
wsws 省略可能な空白。Optional white space.
signsign 省略可能な符号。An optional sign. 有効な符号文字は、現在のカルチャの NumberFormatInfo.NegativeSign および NumberFormatInfo.PositiveSign プロパティによって決定されます。Valid sign characters are determined by the NumberFormatInfo.NegativeSign and NumberFormatInfo.PositiveSign properties of the current culture. ただし、負の記号はゼロでのみ使用できます。それ以外の場合、メソッドは OverflowExceptionをスローします。However, the negative sign symbol can be used only with zero; otherwise, the method throws an OverflowException.
数字digits 0から9までの一連の数字。A sequence of digits ranging from 0 to 9. 先頭の0は無視されます。Any leading zeros are ignored.

注意

s パラメーターによって指定された文字列は、NumberStyles.Integer スタイルを使用して解釈されます。The string specified by the s parameter is interpreted by using the NumberStyles.Integer style. これには、桁区切り記号や小数点を含めることはできません。また、小数点を含めることもできません。It cannot contain any group separators or decimal separator, and it cannot have a decimal portion.

s パラメーターは、現在のシステムカルチャに対して初期化された System.Globalization.NumberFormatInfo オブジェクトの書式情報を使用して解析されます。The s parameter is parsed by using the formatting information in a System.Globalization.NumberFormatInfo object that is initialized for the current system culture. 詳細については、「NumberFormatInfo.CurrentInfo」を参照してください。For more information, see NumberFormatInfo.CurrentInfo. 特定のカルチャの書式情報を使用して文字列を解析するには、Parse(String, IFormatProvider) メソッドを使用します。To parse a string by using the formatting information of a specific culture, use the Parse(String, IFormatProvider) method.

こちらもご覧ください

Parse(String, IFormatProvider)

重要

この API は CLS 準拠ではありません。

CLS 準拠の代替
System.Decimal.Parse(String)

指定したカルチャ固有の書式による数値の文字列形式を、それと等価な 64 ビット符号なし整数に変換します。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

パラメーター

s
String

変換する数値を表す文字列。A string that represents the number to convert.

provider
IFormatProvider

s に関するカルチャ固有の書式情報を提供するオブジェクト。An object that supplies culture-specific formatting information about s.

戻り値

s で指定した数値と等しい 64 ビット符号なし整数。A 64-bit unsigned integer equivalent to the number specified in s.

属性

例外

s パラメーターが null です。The s parameter is null.

s パラメーターが正しいスタイルではありません。The s parameter is not in the correct style.

s パラメーターが、MinValue 未満の数値か、MaxValue より大きい数値を表しています。The s parameter represents a number less than MinValue or greater than MaxValue.

次の例は、Web フォームのボタンクリックイベントハンドラーです。The following example is the button click event handler of a Web form. HttpRequest.UserLanguages プロパティによって返される配列を使用して、ユーザーのロケールを決定します。It uses the array returned by the HttpRequest.UserLanguages property to determine the user's locale. 次に、そのロケールに対応する CultureInfo オブジェクトをインスタンス化します。It then instantiates a CultureInfo object that corresponds to that locale. その CultureInfo オブジェクトに属する NumberFormatInfo オブジェクトを Parse(String, IFormatProvider) メソッドに渡して、ユーザーの入力を UInt64 値に変換します。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

注釈

Parse(String, IFormatProvider) メソッドのこのオーバーロードは、通常、さまざまな方法で書式設定できるテキストを UInt64 の値に変換するために使用されます。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. たとえば、ユーザーが入力したテキストを HTML テキストボックスに数値に変換するために使用できます。For example, it can be used to convert the text entered by a user into an HTML text box to a numeric value.

s パラメーターには、次の形式の数値が含まれています。The s parameter contains a number of the form:

jax-ws[sign] 数字 [ws][ws][sign]digits[ws]

角かっこ ([および]) 内の項目は省略可能です。Items in square brackets ([ and ]) are optional. 次の表は、それぞれの要素の説明です。The following table describes each element.

要素Element 説明Description
wsws 省略可能な空白。Optional white space.
signsign 正符号 (省略可能)。 s が値0を表す場合は負の符号。An optional positive sign, or a negative sign if s represents the value zero.
数字digits 0から9までの一連の数字。A sequence of digits ranging from 0 to 9.

S パラメーターは、NumberStyles.Integer スタイルを使用して解釈されます。The s parameter is interpreted using the NumberStyles.Integer style. 符号なし整数値の10進数に加えて、先頭と末尾のスペースだけでなく先頭の符号も許可されます。In addition to the unsigned integer value's decimal digits, only leading and trailing spaces along with a leading sign is allowed. 負の符号が存在する場合、s は値0を表す必要があります。それ以外の場合、メソッドは OverflowExceptionをスローします)。sに表示されるカルチャ固有の書式情報と共にスタイル要素を明示的に定義するには、Parse(String, NumberStyles, IFormatProvider) メソッドを使用します。(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.

provider パラメーターは、GetFormat メソッドが sの形式に関するカルチャ固有の情報を提供する NumberFormatInfo オブジェクトを返す IFormatProvider の実装です。The provider parameter is an IFormatProvider implementation whose GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of s. provider パラメーターを使用して、解析操作にカスタム書式情報を提供するには、次の3つの方法があります。There are three ways to use the provider parameter to supply custom formatting information to the parse operation:

  • 書式設定情報を提供する実際の NumberFormatInfo オブジェクトを渡すことができます。You can pass the actual NumberFormatInfo object that provides formatting information. (GetFormat の実装では、単にそれ自体が返されます)。(Its implementation of GetFormat simply returns itself.)

  • 書式設定を使用するカルチャを指定する CultureInfo オブジェクトを渡すことができます。You can pass a CultureInfo object that specifies the culture whose formatting is to be used. NumberFormat プロパティは、書式設定情報を提供します。Its NumberFormat property provides formatting information.

  • カスタム IFormatProvider の実装を渡すことができます。You can pass a custom IFormatProvider implementation. GetFormat メソッドは、書式設定情報を提供する NumberFormatInfo オブジェクトをインスタンス化して返す必要があります。Its GetFormat method must instantiate and return the NumberFormatInfo object that provides formatting information.

providernull場合は、現在のカルチャの NumberFormatInfo が使用されます。If provider is null, the NumberFormatInfo for the current culture is used.

こちらもご覧ください

適用対象