NumberStyles Wyliczenie

Definicja

Określa style dozwolone w argumentach ciągów liczbowych, które są przekazane Parse do TryParse i metody typu całkowitego i zmiennoprzecinkowego.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.

To wyliczenie ma atrybut FlagsAttribute zezwalający na bitową kombinację jego wartości składowych.

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

Pola

AllowCurrencySymbol 256

Wskazuje, że ciąg liczbowy może zawierać symbol waluty.Indicates that the numeric string can contain a currency symbol. Prawidłowe symbole waluty są określane przez CurrencySymbol właściwość.Valid currency symbols are determined by the CurrencySymbol property.

AllowDecimalPoint 32

Wskazuje, że ciąg liczbowy może mieć separator dziesiętny.Indicates that the numeric string can have a decimal point. Jeśli wartość zawiera flagę, a analizowany ciąg zawiera symbol waluty, CurrencyDecimalSeparator znak separatora dziesiętnego jest określany przez właściwość. AllowCurrencySymbol NumberStylesIf 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. W przeciwnym razie znak separatora dziesiętnego jest określany przez NumberDecimalSeparator właściwość.Otherwise, the decimal separator character is determined by the NumberDecimalSeparator property.

AllowExponent 128

Wskazuje, że ciąg liczbowy może być w notacji wykładniczej.Indicates that the numeric string can be in exponential notation. AllowExponent Flaga umożliwia przeanalizowany ciąg zawierający wykładnik, który rozpoczyna się od znaku "e" lub "e", po którym następuje opcjonalny znak dodatni lub ujemny oraz liczbę całkowitą.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. Inaczej mówiąc, pomyślnie Analizuje ciągi w formularzu nnneXX, nnne +XXi nnne-XX.In other words, it successfully parses strings in the form nnnExx, nnnE+xx, and nnnE-xx. Nie zezwala na separator dziesiętny ani znak w mantysę lub mantysy; Aby zezwolić na przeanalizowanie tych elementów w ciągu, użyj AllowDecimalPoint flag i AllowLeadingSign lub użyj stylu złożonego, który zawiera te pojedyncze flagi.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 512

Wskazuje, że ciąg liczbowy reprezentuje wartość szesnastkową.Indicates that the numeric string represents a hexadecimal value. Prawidłowe wartości szesnastkowe obejmują cyfry 0-9 i cyfry szesnastkowe A-F i a-f.Valid hexadecimal values include the numeric digits 0-9 and the hexadecimal digits A-F and a-f. Ciągi, które są analizowane przy użyciu tego stylu nie mogą być poprzedzone znakiem "0x&" lub "h".Strings that are parsed using this style cannot be prefixed with "0x" or "&h". Ciąg, który jest analizowany przy użyciu AllowHexSpecifier stylu zawsze będzie interpretowany jako wartość szesnastkowa.A string that is parsed with the AllowHexSpecifier style will always be interpreted as a hexadecimal value. Jedyne flagi, które mogą być połączone AllowHexSpecifier z AllowLeadingWhite to AllowTrailingWhitei.The only flags that can be combined with AllowHexSpecifier are AllowLeadingWhite and AllowTrailingWhite. NumberStyles Wyliczenie zawieraHexNumberstyl złożony, który składa się z trzech flag.The NumberStyles enumeration includes a composite style, HexNumber, that consists of these three flags.

AllowLeadingSign 4

Wskazuje, że ciąg liczbowy może mieć znak wiodący.Indicates that the numeric string can have a leading sign. Prawidłowe znaki znaku wiodącego są określane przez PositiveSign właściwości NegativeSign i.Valid leading sign characters are determined by the PositiveSign and NegativeSign properties.

AllowLeadingWhite 1

Wskazuje, że w analizowanym ciągu mogą występować wiodące znaki odstępu.Indicates that leading white-space characters can be present in the parsed string. Prawidłowe znaki odstępu mają wartości Unicode U + 0009, U + 000A, U + 000B, U + 000C, U + 000D i U + 0020.Valid white-space characters have the Unicode values U+0009, U+000A, U+000B, U+000C, U+000D, and U+0020. Należy zauważyć, że jest to podzbiór znaków, dla których IsWhiteSpace(Char) Metoda zwraca true.Note that this is a subset of the characters for which the IsWhiteSpace(Char) method returns true.

AllowParentheses 16

Wskazuje, że ciąg liczbowy może mieć jedną parę nawiasów otaczających liczbę.Indicates that the numeric string can have one pair of parentheses enclosing the number. Nawiasy wskazują, że ciąg, który ma być analizowany, reprezentuje liczbę ujemną.The parentheses indicate that the string to be parsed represents a negative number.

AllowThousands 64

Wskazuje, że ciąg liczbowy może mieć separatory grup, takie jak symbole oddzielające setki od tysięcy.Indicates that the numeric string can have group separators, such as symbols that separate hundreds from thousands. Jeśli wartość zawiera flagę i ciąg, który ma być analizowany, zawiera symbol waluty, prawidłowy CurrencyGroupSeparator znak separatora grupy jest określany przez właściwość, a liczba cyfr w każdej grupie jest określana przez AllowCurrencySymbol NumberStyles CurrencyGroupSizes właściwość.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. W przeciwnym razie prawidłowy znak separatora grupy jest określany NumberGroupSeparator przez właściwość, a liczba cyfr w każdej grupie jest określana NumberGroupSizes przez właściwość.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 8

Wskazuje, że ciąg liczbowy może mieć znak końcowy.Indicates that the numeric string can have a trailing sign. Prawidłowe końcowe znaki znakowe są określane przez PositiveSign właściwości i. NegativeSignValid trailing sign characters are determined by the PositiveSign and NegativeSign properties.

AllowTrailingWhite 2

Wskazuje, że znaki białej przestrzeni mogą być obecne w analizowanym ciągu.Indicates that trailing white-space characters can be present in the parsed string. Prawidłowe znaki odstępu mają wartości Unicode U + 0009, U + 000A, U + 000B, U + 000C, U + 000D i U + 0020.Valid white-space characters have the Unicode values U+0009, U+000A, U+000B, U+000C, U+000D, and U+0020. Należy zauważyć, że jest to podzbiór znaków, dla których IsWhiteSpace(Char) Metoda zwraca true.Note that this is a subset of the characters for which the IsWhiteSpace(Char) method returns true.

Any 511

Wskazuje, że wszystkie style AllowHexSpecifier oprócz są używane.Indicates that all styles except AllowHexSpecifier are used. To jest złożony styl liczby.This is a composite number style.

Currency 383

Wskazuje, że wszystkie style AllowExponent poza AllowHexSpecifier i są używane.Indicates that all styles except AllowExponent and AllowHexSpecifier are used. To jest złożony styl liczby.This is a composite number style.

Float 167

Wskazuje AllowLeadingWhite AllowTrailingWhite AllowDecimalPoint ,żeużywaneAllowExponent są style,, ,i.AllowLeadingSignIndicates that the AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowDecimalPoint, and AllowExponent styles are used. To jest złożony styl liczby.This is a composite number style.

HexNumber 515

Wskazuje AllowLeadingWhite, że używane AllowTrailingWhitesą style AllowHexSpecifier , i.Indicates that the AllowLeadingWhite, AllowTrailingWhite, and AllowHexSpecifier styles are used. To jest złożony styl liczby.This is a composite number style.

Integer 7

Wskazuje AllowLeadingWhite, że używane AllowTrailingWhitesą style AllowLeadingSign , i.Indicates that the AllowLeadingWhite, AllowTrailingWhite, and AllowLeadingSign styles are used. To jest złożony styl liczby.This is a composite number style.

None 0

Wskazuje, że żadne elementy stylu, takie jak początkowe lub końcowe białe znaki, separatory tysięcy lub separator dziesiętny, mogą być obecne w analizowanym ciągu.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. Ciąg, który ma być analizowany, musi zawierać tylko cyfry dziesiętne.The string to be parsed must consist of integral decimal digits only.

Number 111

AllowLeadingWhiteWskazuje, że używane AllowTrailingWhiteAllowLeadingSignstyle AllowTrailingSign, ,AllowDecimalPoint, AllowThousands , i.Indicates that the AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPoint, and AllowThousands styles are used. To jest złożony styl liczby.This is a composite number style.

Przykłady

Ten przykład pokazuje, jak przeanalizować ciąg do 32-bitowej liczby całkowitej przy użyciu NumberStyles różnych flag.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'.

Uwagi

NumberStyles Wyliczenie składa się z dwóch rodzajów wartości wyliczenia, które są używane do analizowania reprezentacji ciągów wartości liczbowych:The NumberStyles enumeration consists of two kinds of enumeration values that are used to parse the string representations of numeric values:

  • Poszczególne flagi pól, które definiują określone elementy stylu (takie jak odstępy i separatory grup), które mogą być obecne w analizowanym ciągu.Individual field flags, which define specific style elements (such as white space and group separators) that can be present in the parsed string.

  • Złożone style liczb, które składają się z wielu flag pól, które definiują elementy stylu, które mogą być obecne w analizowanym ciągu.Composite number styles, which consist of multiple field flags that define the style elements that can be present in the parsed string.

Oprócz, flagi poszczególnych pól NumberStyles w wyliczeniu definiują elementy stylu, które są używane podczas analizowania ciągu reprezentującego liczbę dziesiętną. 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. Nonewskazuje, że tylko cyfry mogą być obecne w analizowanym ciągu.None indicates that only digits can be present in the parsed string. Pozostałe flagi poszczególnych pól definiują elementy stylu, które mogą być, ale nie muszą być obecne w ciągu reprezentującym liczbę dziesiętną dla operacji analizy.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. Z kolei AllowHexSpecifier Flaga wskazuje, że ciąg do przeanalizowania jest zawsze interpretowany jako wartość szesnastkowa.In contrast, the AllowHexSpecifier flag indicates that the string to be parsed is always interpreted as a hexadecimal value. Jedyne flagi poszczególnych pól, których można używać z AllowHexSpecifier to AllowLeadingWhite i AllowTrailingWhite.The only individual field flags that can be used with AllowHexSpecifier are AllowLeadingWhite and AllowTrailingWhite. Wyliczenie zawiera złożony styl liczb, HexNumberktóry składa się z wszystkich trzech flag. NumberStylesThe NumberStyles enumeration includes a composite number style, HexNumber, that consists of all three flags.

Symbole (takie jak symbol waluty, separator grupy, separator dziesiętny i znaki dodatnie i ujemne), które mogą być wyświetlane w ciągu, który ma być analizowany, są definiowane przez elementy członkowskie System.Globalization.NumberFormatInfo obiektu, który jest przekazaniem niejawnie lub jawnie Parse do metody.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. Tabela członkowie w tym temacie zawiera opis poszczególnych flag i wskazuje jej relację z NumberFormatInfo właściwościami.The members table in this topic provides a description of each individual flag and indicates its relationship to NumberFormatInfo properties.

Poniższa tabela zawiera listę stylów liczb złożonych i wskazuje, które poszczególne flagi pól zawierają.The following table lists the composite number styles and indicates which individual field flags they include. Wartość "1" w komórce wskazuje, że styl liczby złożonej zawiera indywidualny styl liczbowy w tym wierszu.A "1" in a cell indicates that the composite number style includes the individual number style in that row. Wartość "0" wskazuje, że styl liczby kompozytowej nie zawiera indywidualnego stylu numeru.A "0" indicates that the composite number style does not include the individual number style.

AnyAny WalutaCurrency FloatFloat Liczba całkowitaInteger Wartość liczbowaNumber HexNumberHexNumber
AllowHexSpecifier (0x0200)AllowHexSpecifier (0x0200) 00 00 00 00 00 11
AllowCurrencySymbol (0x0100)AllowCurrencySymbol (0x0100) 11 11 00 00 00 00
AllowExponent (0x0080)AllowExponent (0x0080) 11 00 11 00 00 00
AllowThousands (0x0040)AllowThousands (0x0040) 11 11 00 00 11 00
AllowDecimalPoint (0x0020)AllowDecimalPoint (0x0020) 11 11 11 00 11 00
AllowParentheses (0x0010)AllowParentheses (0x0010) 11 11 00 00 00 00
AllowTrailingSign (0x0008)AllowTrailingSign (0x0008) 11 11 00 00 11 00
AllowLeadingSign (0x0004)AllowLeadingSign (0x0004) 11 11 11 11 11 00
AllowTrailingWhite (0x0002)AllowTrailingWhite (0x0002) 11 11 11 11 11 11
AllowLeadingWhite (0x0001)AllowLeadingWhite (0x0001) 11 11 11 11 11 11
(0x1ff)(0x1ff) (0x17f)(0x17f) (0x0a7)(0x0a7) (0x007)(0x007) (0x06f)(0x06f) (0x203)(0x203)

Dotyczy

Zobacz też