NumberStyles NumberStyles NumberStyles NumberStyles Enum

定義

整数数値型と浮動小数点数値型の Parse メソッドおよび TryParse メソッドに渡される数値文字列引数で使用できるスタイルを決定します。Determines the styles permitted in numeric string arguments that are passed to the Parse and TryParse methods of the integral and floating-point numeric types.

この列挙型には FlagsAttribute 属性があり、メンバー値ではビットごとの組み合わせを使用できます。

public enum class NumberStyles
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum NumberStyles
type NumberStyles = 
Public Enum NumberStyles
継承
属性

フィールド

AllowCurrencySymbol AllowCurrencySymbol AllowCurrencySymbol AllowCurrencySymbol 256

数値文字列に通貨記号を含めることができることを示します。Indicates that the numeric string can contain a currency symbol. 有効な通貨記号は、CurrencySymbol プロパティによって決定されます。Valid currency symbols are determined by the CurrencySymbol property.

AllowDecimalPoint AllowDecimalPoint AllowDecimalPoint AllowDecimalPoint 32

数値文字列に小数点を使用できることを示します。Indicates that the numeric string can have a decimal point. NumberStyles 値に AllowCurrencySymbol フラグが含まれ、解析された文字列に通貨記号が含まれる場合、小数点記号は CurrencyDecimalSeparator プロパティによって決定されます。If the NumberStyles value includes the AllowCurrencySymbol flag and the parsed string includes a currency symbol, the decimal separator character is determined by the CurrencyDecimalSeparator property. それ以外の場合、小数点記号は、NumberDecimalSeparator プロパティによって決定されます。Otherwise, the decimal separator character is determined by the NumberDecimalSeparator property.

AllowExponent AllowExponent AllowExponent AllowExponent 128

数値文字列に指数表記を使用できることを示します。Indicates that the numeric string can be in exponential notation. AllowExponent フラグを使用すると、"E" または "e" で始まり、その後に省略可能な正または負の符号と整数が続く指数を、解析対象文字列に含めることができます。The AllowExponent flag allows the parsed string to contain an exponent that begins with the "E" or "e" character and that is followed by an optional positive or negative sign and an integer. つまり、nnnExxnnnE+xx、および nnnE-xx 形式の文字列を正常に解析します。In other words, it successfully parses strings in the form nnnExx, nnnE+xx, and nnnE-xx. 仮数または仮数部では小数点記号または符号を使用することはできません。解析対象の文字列にこれらの要素を含めるには、AllowDecimalPoint フラグと AllowLeadingSign フラグを使用するか、これらの個々のフラグを含む複合スタイルを使用します。It does not allow a decimal separator or sign in the significand or mantissa; to allow these elements in the string to be parsed, use the AllowDecimalPoint and AllowLeadingSign flags, or use a composite style that includes these individual flags.

AllowHexSpecifier AllowHexSpecifier AllowHexSpecifier AllowHexSpecifier 512

数値文字列が 16 進数値を表すことを示します。Indicates that the numeric string represents a hexadecimal value. 有効な 16 進数値には、0 - 9 の範囲の数字と A - F および a - f の範囲の 16 進数の数字を使用できます。Valid hexadecimal values include the numeric digits 0-9 and the hexadecimal digits A-F and a-f. このスタイルを使用して解析される文字列の先頭には、"0x" または "&h" を付けることができません。Strings that are parsed using this style cannot be prefixed with "0x" or "&h". AllowHexSpecifier スタイルで解析される文字列は、常に 16 進値として解釈されます。A string that is parsed with the AllowHexSpecifier style will always be interpreted as a hexadecimal value. AllowHexSpecifier と組み合わせることのできるフラグは、AllowLeadingWhiteAllowTrailingWhite のみです。The only flags that can be combined with AllowHexSpecifier are AllowLeadingWhite and AllowTrailingWhite. NumberStyles 列挙体には複合スタイル HexNumber があり、これら 3 つのフラグで構成されます。The NumberStyles enumeration includes a composite style, HexNumber, that consists of these three flags.

AllowLeadingSign AllowLeadingSign AllowLeadingSign AllowLeadingSign 4

数値文字列に先行する符号を使用できることを示します。Indicates that the numeric string can have a leading sign. 有効な先行する符号の文字は、PositiveSign プロパティと NegativeSign プロパティによって決定します。Valid leading sign characters are determined by the PositiveSign and NegativeSign properties.

AllowLeadingWhite AllowLeadingWhite AllowLeadingWhite AllowLeadingWhite 1

先行する空白文字を解析対象の文字列に使用できることを示します。Indicates that leading white-space characters can be present in the parsed string. 有効な空白文字の Unicode 値は、U+0009、U+000A、U+000B、U+000C、U+000D、および U+0020 です。Valid white-space characters have the Unicode values U+0009, U+000A, U+000B, U+000C, U+000D, and U+0020. これは、IsWhiteSpace(Char) メソッドが true を返す文字のサブセットです。Note that this is a subset of the characters for which the IsWhiteSpace(Char) method returns true.

AllowParentheses AllowParentheses AllowParentheses AllowParentheses 16

数値文字列に、その数値を囲む 1 ペアのかっこを使用できることを示します。Indicates that the numeric string can have one pair of parentheses enclosing the number. かっこは、解析対象の文字列が負の値を表すことを示します。The parentheses indicate that the string to be parsed represents a negative number.

AllowThousands AllowThousands AllowThousands AllowThousands 64

数値文字列に、グループ区切り文字 (たとえば 100 の桁と 1000 の桁を区切る記号) を使用できることを示します。Indicates that the numeric string can have group separators, such as symbols that separate hundreds from thousands. NumberStyles 値に AllowCurrencySymbol フラグが含まれ、解析される文字列に通貨記号が含まれる場合、有効なグループ区切り記号は CurrencyGroupSeparator プロパティによって決定され、各グループの桁数は CurrencyGroupSizes プロパティによって決定されます。If the NumberStyles value includes the AllowCurrencySymbol flag and the string to be parsed includes a currency symbol, the valid group separator character is determined by the CurrencyGroupSeparator property, and the number of digits in each group is determined by the CurrencyGroupSizes property. それ以外の場合、有効なグループ区切り文字は、NumberGroupSeparator プロパティによって決定し、各グループの桁数は、NumberGroupSizes プロパティによって決定します。Otherwise, the valid group separator character is determined by the NumberGroupSeparator property, and the number of digits in each group is determined by the NumberGroupSizes property.

AllowTrailingSign AllowTrailingSign AllowTrailingSign AllowTrailingSign 8

数値文字列に、後続する符号を使用できることを示します。Indicates that the numeric string can have a trailing sign. 有効な末尾の符号の文字は、PositiveSign プロパティと NegativeSign プロパティによって決定します。Valid trailing sign characters are determined by the PositiveSign and NegativeSign properties.

AllowTrailingWhite AllowTrailingWhite AllowTrailingWhite AllowTrailingWhite 2

末尾の空白文字を解析対象の文字列に使用できることを示します。Indicates that trailing white-space characters can be present in the parsed string. 有効な空白文字の Unicode 値は、U+0009、U+000A、U+000B、U+000C、U+000D、および U+0020 です。Valid white-space characters have the Unicode values U+0009, U+000A, U+000B, U+000C, U+000D, and U+0020. これは、IsWhiteSpace(Char) メソッドが true を返す文字のサブセットです。Note that this is a subset of the characters for which the IsWhiteSpace(Char) method returns true.

Any Any Any Any 511

AllowHexSpecifier を除くすべてのスタイルを使用することを示します。Indicates that all styles except AllowHexSpecifier are used. これは複合数値スタイルです。This is a composite number style.

Currency Currency Currency Currency 383

AllowExponentAllowHexSpecifier を除くすべてのスタイルを使用することを示します。Indicates that all styles except AllowExponent and AllowHexSpecifier are used. これは複合数値スタイルです。This is a composite number style.

Float Float Float Float 167

AllowLeadingWhiteAllowTrailingWhiteAllowLeadingSignAllowDecimalPointAllowExponent の各スタイルを使用することを示します。Indicates that the AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowDecimalPoint, and AllowExponent styles are used. これは複合数値スタイルです。This is a composite number style.

HexNumber HexNumber HexNumber HexNumber 515

AllowLeadingWhiteAllowTrailingWhiteAllowHexSpecifier の各スタイルを使用することを示します。Indicates that the AllowLeadingWhite, AllowTrailingWhite, and AllowHexSpecifier styles are used. これは複合数値スタイルです。This is a composite number style.

Integer Integer Integer Integer 7

AllowLeadingWhiteAllowTrailingWhiteAllowLeadingSign の各スタイルを使用することを示します。Indicates that the AllowLeadingWhite, AllowTrailingWhite, and AllowLeadingSign styles are used. これは複合数値スタイルです。This is a composite number style.

None None None None 0

スタイル要素 (先行する空白、後続の空白、桁区切り記号、小数点の記号など) を解析対象の文字列に含めることができないことを示します。Indicates that no style elements, such as leading or trailing white space, thousands separators, or a decimal separator, can be present in the parsed string. 解析対象の文字列は、整数部のみで構成されている必要があります。The string to be parsed must consist of integral decimal digits only.

Number Number Number Number 111

AllowLeadingWhiteAllowTrailingWhiteAllowLeadingSignAllowTrailingSignAllowDecimalPointAllowThousands の各スタイルを使用することを示します。Indicates that the AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPoint, and AllowThousands styles are used. これは複合数値スタイルです。This is a composite number style.

この例では、さまざまなNumberStylesフラグを使用して、文字列を32ビット整数に解析する方法を示します。This example shows how to parse a string into a 32-bit integer by using various NumberStyles flags.

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


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

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

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

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

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

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

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

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

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

Public Module Example
   Public Sub Main() 
      ' Parse the string as a hex value and display the value as a decimal.
      Dim num As String = "A"
      Dim val As Integer = Int32.Parse(num, NumberStyles.HexNumber)
      Console.WriteLine("{0} in hex = {1} in decimal.", num, val)

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

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

注釈

列挙NumberStyles体は、数値の文字列形式を解析するために使用される2種類の列挙値で構成されます。The NumberStyles enumeration consists of two kinds of enumeration values that are used to parse the string representations of numeric values:

  • 個々のフィールドフラグ。解析された文字列内に存在する特定のスタイル要素 (空白やグループの区切り記号など) を定義します。Individual field flags, which define specific style elements (such as white space and group separators) that can be present in the parsed string.

  • 複合数値スタイルは、解析された文字列内に存在可能なスタイル要素を定義する複数のフィールドフラグで構成されます。Composite number styles, which consist of multiple field flags that define the style elements that can be present in the parsed string.

を除きNumberStyles 、列挙体の個々のフィールドフラグは、10進数の文字列形式を解析するときに使用されるスタイル要素を定義します。 AllowHexSpecifierExcept for AllowHexSpecifier, the individual field flags in the NumberStyles enumeration define style elements that are used when parsing the string representation of a decimal number. None解析された文字列に数字のみを使用できることを示します。None indicates that only digits can be present in the parsed string. 残りの個々のフィールドフラグは、解析操作を成功させるために、10進数の文字列形式である必要がありますが、使用する必要がないスタイル要素を定義します。The remaining individual field flags define style elements that may be, but do not have to be, present in the string representation of a decimal number for the parse operation to succeed. これに対し、 AllowHexSpecifierフラグは、解析対象の文字列が常に16進値として解釈されることを示します。In contrast, the AllowHexSpecifier flag indicates that the string to be parsed is always interpreted as a hexadecimal value. AllowHexSpecifier 使用できるAllowTrailingWhite個々のフィールドフラグは、とだけです。AllowLeadingWhiteThe only individual field flags that can be used with AllowHexSpecifier are AllowLeadingWhite and AllowTrailingWhite. 列挙NumberStylesには、3つのすべてHexNumberのフラグで構成される複合数値スタイル () が含まれています。The NumberStyles enumeration includes a composite number style, HexNumber, that consists of all three flags.

解析する文字列に使用できる記号 (通貨記号、桁区切り記号、小数点区切り記号、正符号と負符号など) は、暗黙的または明示的に渡されるSystem.Globalization.NumberFormatInfoオブジェクトのメンバーによって定義されます。メソッドにParse対して。The symbols (such as the currency symbol, the group separator, the decimal separator, and the positive and negative signs) that can appear in the string to be parsed are defined by the members of the System.Globalization.NumberFormatInfo object that is passed either implicitly or explicitly to the Parse method. このトピックの members テーブルでは、個々のフラグについて説明し、 NumberFormatInfoプロパティとの関係を示します。The members table in this topic provides a description of each individual flag and indicates its relationship to NumberFormatInfo properties.

次の表は、複合数値のスタイルと、それらに含まれる個々のフィールドフラグを示しています。The following table lists the composite number styles and indicates which individual field flags they include. セル内の "1" は、その行に個々の数値のスタイルが含まれていることを示します。A "1" in a cell indicates that the composite number style includes the individual number style in that row. "0" は、複合数値スタイルに個々の数値スタイルが含まれていないことを示します。A "0" indicates that the composite number style does not include the individual number style.

どれでも可Any 通貨Currency FloatFloat 整数型Integer 数値Number HexNumberHexNumber
含み (0x0200)AllowHexSpecifier (0x0200) 00 00 00 00 00 11
AllowCurrencySymbol (0x0100)AllowCurrencySymbol (0x0100) 11 11 00 00 00 00
AllowExponent (0x0080)AllowExponent (0x0080) 11 00 11 00 00 00
AllowThousands (0x0040)AllowThousands (0x0040) 11 11 00 00 11 00
AllowDecimalPoint (0x0020)AllowDecimalPoint (0x0020) 11 11 11 00 11 00
AllowParentheses (0x0010)AllowParentheses (0x0010) 11 11 00 00 00 00
Numberstyles.allowtrailingsign (0x0008)AllowTrailingSign (0x0008) 11 11 00 00 11 00
Allowリード Ingsign (0x0004)AllowLeadingSign (0x0004) 11 11 11 11 11 00
Numberstyles.allowtrailingwhite (0x0002)AllowTrailingWhite (0x0002) 11 11 11 11 11 11
Allowリード Ing白色 (0x0001)AllowLeadingWhite (0x0001) 11 11 11 11 11 11
(0x1ff)(0x1ff) (0x17f)(0x17f) (0x0a7)(0x0a7) (0x007)(0x007) (0x06f)(0x06f) (0x203)(0x203)

適用対象

こちらもご覧ください