Int16.Parse メソッド

定義

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

オーバーロード

Parse(String, NumberStyles, IFormatProvider)

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

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

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

Parse(String)

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

Parse(String, IFormatProvider)

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

Parse(String, NumberStyles, IFormatProvider)

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

public:
 static short Parse(System::String ^ s, System::Globalization::NumberStyles style, IFormatProvider ^ provider);
public static short Parse (string s, System.Globalization.NumberStyles style, IFormatProvider provider);
static member Parse : string * System.Globalization.NumberStyles * IFormatProvider -> int16
Public Shared Function Parse (s As String, style As NumberStyles, provider As IFormatProvider) As Short

パラメーター

s
String

変換する数値を含む文字列。A string containing a number to convert.

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 に関するカルチャに固有の書式設定情報を提供する IFormatProviderAn IFormatProvider that supplies culture-specific formatting information about s.

戻り値

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

例外

snullです。s is null.

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

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

s の形式が style に準拠していません。s is not in a format compliant with style.

s は、MinValue 未満の数値か、MaxValue より大きい数値を表します。s represents a number less than MinValue or greater than MaxValue.

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

次のstyle Int16例では、さまざまなパラメーターを使用して、値の文字列形式を解析します。providerThe following example uses a variety of style and provider parameters to parse the string representations of Int16 values.

String^ value;
Int16 number;
NumberStyles style;

// Parse string using "." as the thousands separator 
// and " " as the decimal separator.
value = "19 694,00";
style = NumberStyles::AllowDecimalPoint | NumberStyles::AllowThousands;
CultureInfo^ provider = gcnew CultureInfo("fr-FR");

number = Int16::Parse(value, style, provider);
Console::WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '19 694,00' converted to 19694.

try
{
   number = Int16::Parse(value, style, CultureInfo::InvariantCulture);
   Console::WriteLine("'{0}' converted to {1}.", value, number);
}
catch (FormatException ^e)
{
   Console::WriteLine("Unable to parse '{0}'.", value);
}
// Displays:
//    Unable to parse '19 694,00'.

// Parse string using "$" as the currency symbol for en_GB and
// en-US cultures.
value = "$6,032.00";
style = NumberStyles::Number | NumberStyles::AllowCurrencySymbol;
provider = gcnew CultureInfo("en-GB");

try
{
   number = Int16::Parse(value, style, CultureInfo::InvariantCulture);
   Console::WriteLine("'{0}' converted to {1}.", value, number);
}
catch (FormatException ^e)
{
   Console::WriteLine("Unable to parse '{0}'.", value);
}
// Displays:
//    Unable to parse '$6,032.00'.
                        
provider = gcnew CultureInfo("en-US");
number = Int16::Parse(value, style, provider);
Console::WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '$6,032.00' converted to 6032.      
string value;
short number;
NumberStyles style;
CultureInfo provider;

// Parse string using "." as the thousands separator 
// and " " as the decimal separator.
value = "19 694,00";
style = NumberStyles.AllowDecimalPoint | NumberStyles.AllowThousands;
provider = new CultureInfo("fr-FR");

number = Int16.Parse(value, style, provider);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '19 694,00' converted to 19694.

try
{
   number = Int16.Parse(value, style, CultureInfo.InvariantCulture);
   Console.WriteLine("'{0}' converted to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", value);
}
// Displays:
//    Unable to parse '19 694,00'.

// Parse string using "$" as the currency symbol for en_GB and
// en-US cultures.
value = "$6,032.00";
style = NumberStyles.Number | NumberStyles.AllowCurrencySymbol;
provider = new CultureInfo("en-GB");

try
{
   number = Int16.Parse(value, style, CultureInfo.InvariantCulture);
   Console.WriteLine("'{0}' converted to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", value);
}
// Displays:
//    Unable to parse '$6,032.00'.
                        
provider = new CultureInfo("en-US");
number = Int16.Parse(value, style, provider);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '$6,032.00' converted to 6032.      
Dim value As String
Dim number As Short
Dim style As NumberStyles
Dim provider As CultureInfo

' Parse string using "." as the thousands separator 
' and " " as the decimal separator.
value = "19 694,00"
style = NumberStyles.AllowDecimalPoint Or NumberStyles.AllowThousands
provider = New CultureInfo("fr-FR")

number = Int16.Parse(value, style, provider)
Console.WriteLine("'{0}' converted to {1}.", value, number)
' Displays:
'    '19 694,00' converted to 19694.

Try
   number = Int16.Parse(value, style, CultureInfo.InvariantCulture)
   Console.WriteLine("'{0}' converted to {1}.", value, number)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", value)
End Try
' Displays:
'    Unable to parse '19 694,00'.

' Parse string using "$" as the currency symbol for en_GB and
' en-US cultures.
value = "$6,032.00"
style = NumberStyles.Number Or NumberStyles.AllowCurrencySymbol
provider = New CultureInfo("en-GB")

Try
   number = Int16.Parse(value, style, CultureInfo.InvariantCulture)
   Console.WriteLine("'{0}' converted to {1}.", value, number)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", value)
End Try
' Displays:
'    Unable to parse '$6,032.00'.
                        
provider = New CultureInfo("en-US")
number = Int16.Parse(value, style, provider)
Console.WriteLine("'{0}' converted to {1}.", value, number)
' Displays:
'    '$6,032.00' converted to 6032.      

注釈

パラメーター styleは、解析操作を成功させるためにsパラメーターで使用できるスタイル要素 (空白や正符号など) を定義します。The style parameter defines the style elements (such as white space or the positive sign) 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:

jax-ws[$]シャープ[数字,] 数字 [. fractional_digits] [e [sign] 数字] [ws][ws][$][sign][digits,]digits[.fractional_digits][e[sign]digits][ws]

または、 styleAllowHexSpecifierが含まれている場合:Or, if style includes AllowHexSpecifier:

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

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

要素Element 説明Description
wsws 省略可能な空白。Optional white space. ss フラグがstyle含まれているNumberStyles.AllowTrailingWhite場合は、の先頭に空白が表示されます。または、の末尾にフラグが含まれている場合もあります。style NumberStyles.AllowLeadingWhiteWhite space can appear at the beginning of s if style includes the NumberStyles.AllowLeadingWhite flag, or at the end of s if style includes the NumberStyles.AllowTrailingWhite flag.
$ カルチャ固有の通貨記号。A culture-specific currency symbol. 文字列内での位置は、現在のNumberFormatInfo.CurrencyPositivePatternカルチャNumberFormatInfo.CurrencyNegativePatternのおよびプロパティによって定義されます。Its position in the string is defined by the NumberFormatInfo.CurrencyPositivePattern and NumberFormatInfo.CurrencyNegativePattern property of the current culture. NumberStyles.AllowCurrencySymbolフラグが含まれている場合styles 、現在のカルチャの通貨記号がに表示されます。The current culture's currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign 省略可能な符号。An optional sign. sNumberStyles.AllowTrailingSign s styleフラグが含まstyleれている場合は、の先頭に符号が表示されます。また、にフラグが含まれている場合は、の末尾にも表示されます。 NumberStyles.AllowLeadingSignThe sign can appear at the beginning 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. s NumberStyles.AllowParenthesesフラグが含まれている場合styleは、かっこを使用して負の値を示すことができます。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 thousands separator symbol. NumberStyles.AllowThousandsフラグが含まれている場合styleは、 s現在のカルチャの桁区切り記号がに表示されます。The current culture's thousands separator symbol can appear in s if style includes the NumberStyles.AllowThousands flag.
.. カルチャ固有の小数点の記号。A culture-specific decimal point symbol. NumberStyles.AllowDecimalPointフラグが含まれている場合style 、現在sのカルチャの小数点の記号がに表示されます。The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits 0の数字のシーケンス。A sequence of the 0 digit. にフラグが含まれsstyleいる場合NumberStyles.AllowDecimalPoint 、には小数点以下の桁数が表示されます。Fractional digits can appear in s if style includes the NumberStyles.AllowDecimalPoint flag. Fractional_digitsに0以外の数字が含まれている場合、メソッドOverflowExceptionはをスローします。If any digit other than 0 appears in fractional_digits, the method throws an OverflowException.
ee "E" または "e" 文字。指数表記でs表すことができることを示します。The 'e' or 'E' character, which indicates that s can be represented in exponential notation. s NumberStyles.AllowExponentフラグが含まれている場合style 、パラメーターは指数表記で数値を表すことができます。The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag. ただし、パラメーター sは、 Int16データ型の範囲の数値を表す必要があり、0以外の小数部分を持つことはできません。However, the s parameter must represent a number in the range of the Int16 data type and cannot have a non-zero fractional component.
hexdigitshexdigits 0から f、または0から F までの16進数のシーケンス。A sequence of hexadecimal digits from 0 through f, or 0 through F.

注意

の終端の NUL (U + 0000) 文字sは、 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スタイルに対応) は、常に正常に解析されます。A string with digits only (which corresponds to the NumberStyles.None style) always parses successfully. 残りNumberStylesのメンバーのほとんどは、この入力文字列に存在する必要があるが必須ではない要素を制御します。Most of the remaining NumberStyles members control elements that may be 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.

非複合 NumberStyles 値Non-composite NumberStyles values 数字に加えてで許可される要素Elements permitted in s in addition to digits
NumberStyles.None 10進数のみ。Decimal digits only.
NumberStyles.AllowDecimalPoint .The . およびfractional_digits要素。and fractional_digits elements. ただし、 fractional_digitsは1桁以上の0桁で構成する必要OverflowExceptionがあります。それ以外の場合は、がスローされます。However, fractional_digits must consist of only one or more 0 digits or an OverflowException is thrown.
NumberStyles.AllowExponent パラメーター sでは、指数表記を使用することもできます。The s parameter can also use exponential notation.
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 can appear before digits.
NumberStyles.AllowTrailingSign 数字の後に符号が表示されます。A sign can appear after digits.
NumberStyles.AllowParentheses 数値を囲むかっこ形式のsign要素。The sign element in the form of parentheses enclosing the numeric value.
NumberStyles.AllowThousands 要素 要素。The , element.
NumberStyles.AllowCurrencySymbol $ 要素。The $ element.

フラグがNumberStyles.AllowHexSpecifier使用されてsいる場合、は、プレフィックスのない16進値の文字列形式である必要があります。If the NumberStyles.AllowHexSpecifier flag is used, s must be the string representation of a hexadecimal value without a prefix. たとえば、"9AF3" は正常に解析されますが、"0x9AF3" は正常に解析されません。For example, "9AF3" parses successfully, but "0x9AF3" does not.. 内にstyle NumberStyles.AllowTrailingWhite存在できるフラグは、とだけです。NumberStyles.AllowLeadingWhiteThe only other flags that can be present in style are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (列挙体には、両方の空白NumberStyles.HexNumberフラグを含む複合数値スタイルがあります)。 NumberStyles(The NumberStyles enumeration has a composite number style, NumberStyles.HexNumber, that includes both white space flags.)

パラメーターは、 GetFormatメソッドがオブジェクトをNumberFormatInfo取得する実装です。IFormatProvider providerThe provider parameter is an IFormatProvider implementation whose GetFormat method obtains a NumberFormatInfo object. オブジェクトNumberFormatInfoは、の書式に関するカルチャ固有のs情報を提供します。The NumberFormatInfo object provides culture-specific information about the format of s. NumberFormatInfoprovider の場合は、現在のカルチャのオブジェクトが使用されます。nullIf provider is null, the NumberFormatInfo object for the current culture is used.

こちらもご覧ください

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

public static short Parse (ReadOnlySpan<char> s, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Integer, IFormatProvider provider = null);
static member Parse : ReadOnlySpan<char> * System.Globalization.NumberStyles * IFormatProvider -> int16
Public Shared Function Parse (s As ReadOnlySpan(Of Char), Optional style As NumberStyles = System.Globalization.NumberStyles.Integer, Optional provider As IFormatProvider = null) As Short

パラメーター

style
NumberStyles
provider
IFormatProvider

戻り値

Parse(String, NumberStyles)

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

public:
 static short Parse(System::String ^ s, System::Globalization::NumberStyles style);
public static short Parse (string s, System.Globalization.NumberStyles style);
static member Parse : string * System.Globalization.NumberStyles -> int16
Public Shared Function Parse (s As String, style As NumberStyles) As Short

パラメーター

s
String

変換する数値を含む文字列。A string containing a number to convert.

style
NumberStyles

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

戻り値

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

例外

snullです。s is null.

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

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

s の形式が style に準拠していません。s is not in a format compliant with style.

s は、MinValue 未満の数値か、MaxValue より大きい数値を表します。s represents a number less than MinValue or greater than MaxValue.

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

次の例ではInt16.Parse(String, NumberStyles) 、メソッドを使用して、 Int16 en-us カルチャを使用して値の文字列形式を解析します。The following example uses the Int16.Parse(String, NumberStyles) method to parse the string representations of Int16 values using the en-US culture.

using namespace System;
using namespace System::Globalization;

ref class ParseSample
{
public:
   static void Main()
   {
      String^ value;
      NumberStyles style;

      // Parse a number with a thousands separator (throws an exception).
      value = "14,644";
      style = NumberStyles::None;
      ParseSample::ParseToInt16(value, style);
      
      style = NumberStyles::AllowThousands;
      ParseToInt16(value, style);
      
      // Parse a number with a thousands separator and decimal point.
      value = "14,644.00";
      style = NumberStyles::AllowThousands | NumberStyles::Integer |
              NumberStyles::AllowDecimalPoint;
      ParseToInt16(value, style);
      
      // Parse a number with a fractional component (throws an exception).
      value = "14,644.001";
      ParseToInt16(value, style);
      
      // Parse a number in exponential notation.
      value = "145E02";
      style = style | NumberStyles::AllowExponent;
      ParseToInt16(value, style);
      
      // Parse a number in exponential notation with a positive sign.
      value = "145E+02";
      ParseToInt16(value, style);
      
      // Parse a number in exponential notation with a negative sign
      // (throws an exception).
      value = "145E-02";
      ParseToInt16(value, style);
   }

private:
   static void ParseToInt16(String^ value, NumberStyles style)
   {
      try
      {
         Int16 number = Int16::Parse(value, style);
         Console::WriteLine("Converted '{0}' to {1}.", value, number);
      }
      catch (FormatException ^e)
      {
         Console::WriteLine("Unable to parse '{0}' with style {1}.", value, 
                            style);
      }
      catch (OverflowException ^e)
      {
         Console::WriteLine("'{0}' is out of range of the Int16 type.", value);
      }
   }
};

int main()
{
    ParseSample::Main();
    Console::ReadLine();
    return 0;
}
// The example displays the following output:
//       Unable to parse '14,644' with style None.
//       Converted '14,644' to 14644.
//       Converted '14,644.00' to 14644.
//       '14,644.001' is out of range of the Int16 type.
//       Converted '145E02' to 14500.
//       Converted '145E+02' to 14500.
//       '145E-02' is out of range of the Int16 type.
using System;
using System.Globalization;

public class ParseSample
{
   public static void Main()
   {
      string value; 
      NumberStyles style;
      
      // Parse a number with a thousands separator (throws an exception).
      value = "14,644";
      style = NumberStyles.None;
      ParseToInt16(value, style);
      
      style = NumberStyles.AllowThousands;
      ParseToInt16(value, style);
      
      // Parse a number with a thousands separator and decimal point.
      value = "14,644.00";
      style = NumberStyles.AllowThousands | NumberStyles.Integer |
              NumberStyles.AllowDecimalPoint;
      ParseToInt16(value, style);
      
      // Parse a number with a fractional component (throws an exception).
      value = "14,644.001";
      ParseToInt16(value, style);
      
      // Parse a number in exponential notation.
      value = "145E02";
      style = style | NumberStyles.AllowExponent;
      ParseToInt16(value, style);
      
      // Parse a number in exponential notation with a positive sign.
      value = "145E+02";
      ParseToInt16(value, style);
      
      // Parse a number in exponential notation with a negative sign
      // (throws an exception).
      value = "145E-02";
      ParseToInt16(value, style);
   }

   private static void ParseToInt16(string value, NumberStyles style)
   {
      try
      {
         short number = Int16.Parse(value, style);
         Console.WriteLine("Converted '{0}' to {1}.", value, number);
      }
      catch (FormatException)
      {
         Console.WriteLine("Unable to parse '{0}' with style {1}.", value, 
                           style.ToString());
      }
      catch (OverflowException)
      {
         Console.WriteLine("'{0}' is out of range of the Int16 type.", value);
      }
   }   
}
// The example displays the following output to the console:
//       Unable to parse '14,644' with style None.
//       Converted '14,644' to 14644.
//       Converted '14,644.00' to 14644.
//       '14,644.001' is out of range of the Int16 type.
//       Converted '145E02' to 14500.
//       Converted '145E+02' to 14500.
//       '145E-02' is out of range of the Int16 type.
Imports System.Globalization

Module ParseSample
   Public Sub Main()
      Dim value As String 
      Dim style As NumberStyles
      
      ' Parse a number with a thousands separator (throws an exception).
      value = "14,644"
      style = NumberStyles.None
      ParseToInt16(value, style)
      
      style = NumberStyles.AllowThousands
      ParseToInt16(value, style)
      
      ' Parse a number with a thousands separator and decimal point.
      value = "14,644.00"
      style = NumberStyles.AllowThousands Or NumberStyles.Integer Or _
              NumberStyles.AllowDecimalPoint
      ParseToInt16(value, style)
      
      ' Parse a number with a fractional component (throws an exception).
      value = "14,644.001"
      ParseToInt16(value, style)
      
      ' Parse a number in exponential notation.
      value = "145E02"
      style = style Or NumberStyles.AllowExponent
      ParseToInt16(value, style)
      
      ' Parse a number in exponential notation with a positive sign.
      value = "145E+02"
      ParseToInt16(value, style)
      
      ' Parse a number in exponential notation with a negative sign
      ' (throws an exception).
      value = "145E-02"
      ParseToInt16(value, style)
   End Sub
   
   Private Sub ParseToInt16(value As String, style As NumberStyles)
      Try
         Dim number As Short = Int16.Parse(value, style)
         Console.WriteLine("Converted '{0}' to {1}.", value, number)
      Catch e As FormatException
         Console.WriteLine("Unable to parse '{0}' with style {1}.", value, _
                           style.ToString())
      Catch e As OverflowException
         Console.WriteLine("'{0}' is out of range of the Int16 type.", value)
      End Try
   End Sub   
End Module
' The example displays the following output to the console:
'       Unable to parse '14,644' with style None.
'       Converted '14,644' to 14644.
'       Converted '14,644.00' to 14644.
'       '14,644.001' is out of range of the Int16 type.
'       Converted '145E02' to 14500.
'       Converted '145E+02' to 14500.
'       '145E-02' is out of range of the Int16 type.

注釈

パラメーター styleは、解析操作を成功させるためにsパラメーターで使用できるスタイル要素 (空白や記号など) を定義します。The style parameter defines the style elements (such as white space or a 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:

jax-ws[$]シャープ[数字,] 数字 [. fractional_digits] [e [sign] 数字] [ws][ws][$][sign][digits,]digits[.fractional_digits][e[sign]digits][ws]

または、 styleAllowHexSpecifierが含まれている場合:Or, if style includes AllowHexSpecifier:

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

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

要素Element 説明Description
wsws 省略可能な空白。Optional white space. ss フラグがstyle含まれているNumberStyles.AllowTrailingWhite場合は、の先頭に空白が表示されます。または、の末尾にフラグが含まれている場合もあります。style NumberStyles.AllowLeadingWhiteWhite space can appear at the beginning of s if style includes the NumberStyles.AllowLeadingWhite flag, or at the end of s if style includes the NumberStyles.AllowTrailingWhite flag.
$ カルチャ固有の通貨記号。A culture-specific currency symbol. 文字列内での位置は、現在のNumberFormatInfo.CurrencyPositivePatternカルチャNumberFormatInfo.CurrencyNegativePatternのおよびプロパティによって定義されます。Its position in the string is defined by the NumberFormatInfo.CurrencyPositivePattern and NumberFormatInfo.CurrencyNegativePattern property of the current culture. NumberStyles.AllowCurrencySymbolフラグが含まれている場合styles 、現在のカルチャの通貨記号がに表示されます。The current culture's currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign 省略可能な符号。An optional sign. sNumberStyles.AllowTrailingSign s styleフラグが含まstyleれている場合は、の先頭に符号が表示されます。また、にフラグが含まれている場合は、の末尾にも表示されます。 NumberStyles.AllowLeadingSignThe sign can appear at the beginning 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. s NumberStyles.AllowParenthesesフラグが含まれている場合styleは、かっこを使用して負の値を示すことができます。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 thousands separator symbol. NumberStyles.AllowThousandsフラグが含まれている場合styleは、 s現在のカルチャの桁区切り記号がに表示されます。The current culture's thousands separator symbol can appear in s if style includes the NumberStyles.AllowThousands flag.
.. カルチャ固有の小数点の記号。A culture-specific decimal point symbol. NumberStyles.AllowDecimalPointフラグが含まれている場合style 、現在sのカルチャの小数点の記号がに表示されます。The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits 0の数字のシーケンス。A sequence of the 0 digit. にフラグが含まれsstyleいる場合NumberStyles.AllowDecimalPoint 、には小数点以下の桁数が表示されます。Fractional digits can appear in s if style includes the NumberStyles.AllowDecimalPoint flag. Fractional_digitsに0以外の数字が含まれている場合、メソッドOverflowExceptionはをスローします。If any digit other than 0 appears in fractional_digits, the method throws an OverflowException.
ee "E" または "e" 文字。指数表記でs表すことができることを示します。The 'e' or 'E' character, which indicates that s can be represented in exponential notation. s NumberStyles.AllowExponentフラグが含まれている場合style 、パラメーターは指数表記で数値を表すことができます。The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag. ただし、パラメーター sは、 Int16データ型の範囲の数値を表す必要があり、0以外の小数部分を持つことはできません。However, the s parameter must represent a number in the range of the Int16 data type and cannot have a non-zero fractional component.
hexdigitshexdigits 0から f、または0から F までの16進数のシーケンス。A sequence of hexadecimal digits from 0 through f, or 0 through F.

注意

の終端の NUL (U + 0000) 文字sは、 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スタイルに対応) は、常に正常に解析されます。A string with digits only (which corresponds to the NumberStyles.None style) always parses successfully. 残りNumberStylesのメンバーのほとんどは、この入力文字列に存在する必要があるが必須ではない要素を制御します。Most of the remaining NumberStyles members control elements that may be 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.

非複合 NumberStyles 値Non-composite NumberStyles values 数字に加えてで許可される要素Elements permitted in s in addition to digits
NumberStyles.None 10進数のみ。Decimal digits only.
NumberStyles.AllowDecimalPoint .The . およびfractional_digits要素。and fractional_digits elements. ただし、 fractional_digitsは1桁以上の0桁で構成する必要OverflowExceptionがあります。それ以外の場合は、がスローされます。However, fractional_digits must consist of only one or more 0 digits or an OverflowException is thrown.
NumberStyles.AllowExponent パラメーター sでは、指数表記を使用することもできます。The s parameter can also use exponential notation.
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 can appear before digits.
NumberStyles.AllowTrailingSign 数字の後に符号が表示されます。A sign can appear after digits.
NumberStyles.AllowParentheses 数値を囲むかっこ形式のsign要素。The sign element in the form of parentheses enclosing the numeric value.
NumberStyles.AllowThousands 要素 要素。The , element.
NumberStyles.AllowCurrencySymbol $ 要素。The $ element.

フラグがNumberStyles.AllowHexSpecifier使用されてsいる場合、は、プレフィックスのない16進値の文字列形式である必要があります。If the NumberStyles.AllowHexSpecifier flag is used, s must be the string representation of a hexadecimal value without a prefix. たとえば、"9AF3" は正常に解析されますが、"0x9AF3" は正常に解析されません。For example, "9AF3" parses successfully, but "0x9AF3" does not. 内にstyle NumberStyles.AllowTrailingWhite存在できるフラグは、とだけです。NumberStyles.AllowLeadingWhiteThe only other flags that can be present in style are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (列挙体には、両方の空白NumberStyles.HexNumberフラグを含む複合数値スタイルがあります)。 NumberStyles(The NumberStyles enumeration has a composite number style, NumberStyles.HexNumber, that includes both white space flags.)

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

こちらもご覧ください

Parse(String)

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

public:
 static short Parse(System::String ^ s);
public static short Parse (string s);
static member Parse : string -> int16
Public Shared Function Parse (s As String) As Short

パラメーター

s
String

変換する数値を含む文字列。A string containing a number to convert.

戻り値

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

例外

snullです。s is null.

s が正しい形式ではありません。s is not in the correct format.

s は、MinValue 未満の数値か、MaxValue より大きい数値を表します。s represents a number less than MinValue or greater than MaxValue.

次の例は、 Int16.Parse(String)メソッドを使用して文字列値を16ビット符号付き整数値に変換する方法を示しています。The following example demonstrates how to convert a string value into a 16-bit signed integer value using the Int16.Parse(String) method. 結果の整数値がコンソールに表示されます。The resulting integer value is then displayed to the console.

String^ value;
Int16 number;
   
value = " 12603 ";
try
{
   number = Int16::Parse(value);
   Console::WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException ^e)
{
   Console::WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", 
                      value);
}
   
value = " 16,054";
try
{
   number = Int16::Parse(value);
   Console::WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException ^e)
{
   Console::WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", 
                     value);
}
                           
value = " -17264";
try
{
   number = Int16::Parse(value);
   Console::WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException ^e)
{
   Console::WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", 
                      value);
}
// The example displays the following output to the console:
//       Converted ' 12603 ' to 12603.
//       Unable to convert ' 16,054' to a 16-bit signed integer.
//       Converted ' -17264' to -17264.      
string value;
short number;

value = " 12603 ";
try
{
   number = Int16.Parse(value);
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", 
                     value);
}

value = " 16,054";
try
{
   number = Int16.Parse(value);
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", 
                     value);
}
                        
value = " -17264";
try
{
   number = Int16.Parse(value);
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", 
                     value);
}
// The example displays the following output to the console:
//       Converted ' 12603 ' to 12603.
//       Unable to convert ' 16,054' to a 16-bit signed integer.
//       Converted ' -17264' to -17264.      
Dim value As String
Dim number As Short

value = " 12603 "
Try
   number = Short.Parse(value)
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Catch e As FormatException
   Console.WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", _
                     value)
End Try

value = " 16,054"
Try
   number = Short.Parse(value)
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Catch e As FormatException
   Console.WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", _
                     value)
End Try
                        
value = " -17264"
Try
   number = Short.Parse(value)
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Catch e As FormatException
   Console.WriteLine("Unable to convert '{0}' to a 16-bit signed integer.", _
                     value)
End Try
' The example displays the following output to the console:
'       Converted ' 12603 ' to 12603.
'       Unable to convert ' 16,054' to a 16-bit signed integer.
'       Converted ' -17264' to -17264.      

注釈

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

jax-ws[sign] 数字 [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.
数字digits 0から9までの一連の数字。A sequence of digits ranging from 0 to 9.

パラメーターは、 NumberStyles.Integerスタイルを使用して解釈されます。 sThe s parameter is interpreted using the NumberStyles.Integer style. 整数値の10進数に加えて、先頭と末尾のスペースだけを先頭の符号と共に使用できます。In addition to the integer value's decimal digits, only leading and trailing spaces together with a leading sign are allowed. s使用できるスタイル要素を明示的に定義するにInt16.Parse(String, NumberStyles)は、 Parseメソッドまたはメソッドを使用します。To explicitly define the style elements that can be present in s, use either the Int16.Parse(String, NumberStyles) or the Parse method.

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

こちらもご覧ください

Parse(String, IFormatProvider)

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

public:
 static short Parse(System::String ^ s, IFormatProvider ^ provider);
public static short Parse (string s, IFormatProvider provider);
static member Parse : string * IFormatProvider -> int16
Public Shared Function Parse (s As String, provider As IFormatProvider) As Short

パラメーター

s
String

変換する数値を含む文字列。A string containing a number to convert.

provider
IFormatProvider

s に関するカルチャに固有の書式設定情報を提供する IFormatProviderAn IFormatProvider that supplies culture-specific formatting information about s.

戻り値

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

例外

snullです。s is null.

s が正しい形式ではありません。s is not in the correct format.

s は、MinValue 未満の数値か、MaxValue より大きい数値を表します。s represents a number less than MinValue or greater than MaxValue.

次の例では、メソッドInt16を使用しInt16.Parse(String, IFormatProvider)て、値の文字列形式を解析します。The following example parses string representations of Int16 values with the Int16.Parse(String, IFormatProvider) method.

String^ stringToConvert;
Int16 number;

stringToConvert = " 214 ";
try
{
   number = Int16::Parse(stringToConvert, CultureInfo::InvariantCulture);
   Console::WriteLine("Converted '{0}' to {1}.", stringToConvert, number);
}
catch (FormatException ^e)
{
   Console::WriteLine("Unable to parse '{0}'.", stringToConvert);
}
catch (OverflowException ^e)
{
   Console::WriteLine("'{0'} is out of range of the Int16 data type.", 
                     stringToConvert);
}

stringToConvert = " + 214";                     
try
{
   number = Int16::Parse(stringToConvert, CultureInfo::InvariantCulture);
   Console::WriteLine("Converted '{0}' to {1}.", stringToConvert, number);
}
catch (FormatException ^e)
{
   Console::WriteLine("Unable to parse '{0}'.", stringToConvert);
}
catch (OverflowException ^e)
{
   Console::WriteLine("'{0'} is out of range of the Int16 data type.", 
                     stringToConvert);
}

stringToConvert = " +214 "; 
try
{
   number = Int16::Parse(stringToConvert, CultureInfo::InvariantCulture);
   Console::WriteLine("Converted '{0}' to {1}.", stringToConvert, number);
}
catch (FormatException ^e)
{
   Console::WriteLine("Unable to parse '{0}'.", stringToConvert);
}
catch (OverflowException ^e)
{
   Console::WriteLine("'{0'} is out of range of the Int16 data type.", 
                     stringToConvert);
}
// The example displays the following output to the console:
//       Converted ' 214 ' to 214.
//       Unable to parse ' + 214'.
//       Converted ' +214 ' to 214.
string stringToConvert;
short number;

stringToConvert = " 214 ";
try
{
   number = Int16.Parse(stringToConvert, CultureInfo.InvariantCulture);
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert);
}
catch (OverflowException)
{
   Console.WriteLine("'{0'} is out of range of the Int16 data type.", 
                     stringToConvert);
}

stringToConvert = " + 214";                     
try
{
   number = Int16.Parse(stringToConvert, CultureInfo.InvariantCulture);
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert);
}
catch (OverflowException)
{
   Console.WriteLine("'{0'} is out of range of the Int16 data type.", 
                     stringToConvert);
}

stringToConvert = " +214 "; 
try
{
   number = Int16.Parse(stringToConvert, CultureInfo.InvariantCulture);
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert);
}
catch (OverflowException)
{
   Console.WriteLine("'{0'} is out of range of the Int16 data type.", 
                     stringToConvert);
}
// The example displays the following output to the console:
//       Converted ' 214 ' to 214.
//       Unable to parse ' + 214'.
//       Converted ' +214 ' to 214.
Dim stringToConvert As String
Dim number As Short

stringToConvert = " 214 "
Try
   number = Int16.Parse(stringToConvert, CultureInfo.InvariantCulture)
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert)
Catch e As OverflowException
   Console.WriteLine("'{0'} is out of range of the Int16 data type.", _
                     stringToConvert)
End Try

stringToConvert = " + 214"                                 
Try
   number = Int16.Parse(stringToConvert, CultureInfo.InvariantCulture)
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert)
Catch e As OverflowException
   Console.WriteLine("'{0'} is out of range of the Int16 data type.", _
                     stringToConvert)
End Try

stringToConvert = " +214 " 
Try
   number = Int16.Parse(stringToConvert, CultureInfo.InvariantCulture)
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert)
Catch e As OverflowException
   Console.WriteLine("'{0'} is out of range of the Int16 data type.", _
                     stringToConvert)
End Try
' The example displays the following output to the console:
'       Converted ' 214 ' to 214.
'       Unable to parse ' + 214'.
'       Converted ' +214 ' to 214.

注釈

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

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

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

要素Element 説明Description
wsws 省略可能な空白。An optional white space.
signsign 省略可能な符号。An optional sign.
数字digits 0から9までの一連の数字。A sequence of digits ranging from 0 to 9.

パラメーターは、 NumberStyles.Integerスタイルを使用して解釈されます。 sThe s parameter is interpreted using the NumberStyles.Integer style. 10進数に加えて、でsは先頭と末尾のスペースだけでなく先頭の記号も使用できます。In addition to decimal digits, only leading and trailing spaces together with a leading sign are allowed in s. sInt16.Parse(String, NumberStyles, IFormatProvider)使用できるカルチャ固有の書式情報と共にスタイル要素を明示的に定義するには、メソッドを使用します。To explicitly define the style elements together with the culture-specific formatting information that can be present in s, use the Int16.Parse(String, NumberStyles, IFormatProvider) method.

パラメーターは、オブジェクトをNumberFormatInfo取得する実装です。IFormatProvider providerThe provider parameter is an IFormatProvider implementation that obtains a NumberFormatInfo object. NumberFormatInfo 、の書式に関するカルチャ固有のs情報を提供します。The NumberFormatInfo provides culture-specific information about the format of s. providernull場合は、現在のカルチャのが使用されます。NumberFormatInfoIf provider is null, the NumberFormatInfo for the current culture is used.

こちらもご覧ください

適用対象