NumberStyles Výčet

Definice

Určuje styly povolené v řetězcových argumentech, které jsou předány Parse a TryParse metody integrálních a plovoucích bodů.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.

Tento výčet má atribut FlagsAttribute, který umožňuje bitové kombinace hodnot členů.

public enum class NumberStyles
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum NumberStyles
type NumberStyles = 
Public Enum NumberStyles
Dědičnost
NumberStyles
Atributy

Pole

AllowCurrencySymbol 256

Označuje, že číselný řetězec může obsahovat symbol měny.Indicates that the numeric string can contain a currency symbol. Platné symboly měny jsou určeny vlastností CurrencySymbol.Valid currency symbols are determined by the CurrencySymbol property.

AllowDecimalPoint 32

Označuje, že číselný řetězec může obsahovat desetinné čárky.Indicates that the numeric string can have a decimal point. Pokud NumberStyles hodnota zahrnuje příznak AllowCurrencySymbol a analyzovaný řetězec obsahuje symbol měny, je znak oddělovače desetinných míst určen vlastností 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. V opačném případě je znak oddělovače desetinných míst určen vlastností NumberDecimalSeparator.Otherwise, the decimal separator character is determined by the NumberDecimalSeparator property.

AllowExponent 128

Označuje, že číselný řetězec může být v exponenciálním zápisu.Indicates that the numeric string can be in exponential notation. Příznak AllowExponent umožňuje, aby analyzovaný řetězec obsahoval exponent, který začíná znakem "E" nebo "e" a následovaný nepovinným kladným nebo záporným znaménkem a celým číslem.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. Jinými slovy, úspěšně analyzuje řetězce ve formátu NNNeXX, NNNE +XXa NNNE-XX.In other words, it successfully parses strings in the form nnnExx, nnnE+xx, and nnnE-xx. Nepovoluje oddělovač desetinných míst ani znaménka v mantisa nebo mantise; Chcete-li, aby byly tyto prvky v řetězci analyzovány, použijte příznaky AllowDecimalPoint a AllowLeadingSign, nebo použijte složený styl, který obsahuje tyto jednotlivé příznaky.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

Označuje, že číselný řetězec představuje hexadecimální hodnotu.Indicates that the numeric string represents a hexadecimal value. Platné hexadecimální hodnoty obsahují číselné číslice 0-9 a hexadecimální číslice A-f a a-f.Valid hexadecimal values include the numeric digits 0-9 and the hexadecimal digits A-F and a-f. Řetězce, které jsou analyzovány pomocí tohoto stylu, nesmí obsahovat předponu "0x" nebo "&h".Strings that are parsed using this style cannot be prefixed with "0x" or "&h". Řetězec, který je analyzován pomocí stylu AllowHexSpecifier, bude vždy interpretován jako hexadecimální hodnota.A string that is parsed with the AllowHexSpecifier style will always be interpreted as a hexadecimal value. Jedinými příznaky, které lze kombinovat s AllowHexSpecifier, jsou AllowLeadingWhite a AllowTrailingWhite.The only flags that can be combined with AllowHexSpecifier are AllowLeadingWhite and AllowTrailingWhite. Výčet NumberStyles obsahuje složený styl, HexNumber, který se skládá z těchto tří příznaků.The NumberStyles enumeration includes a composite style, HexNumber, that consists of these three flags.

AllowLeadingSign 4

Označuje, že číselný řetězec může mít počáteční znaménko.Indicates that the numeric string can have a leading sign. Platné úvodní znaky znaménka jsou určeny vlastnostmi PositiveSign a NegativeSign.Valid leading sign characters are determined by the PositiveSign and NegativeSign properties.

AllowLeadingWhite 1

Označuje, že počáteční prázdné znaky mohou být k dispozici v analyzovaném řetězci.Indicates that leading white-space characters can be present in the parsed string. Platné prázdné znaky mají hodnoty Unicode U + 0009, U + 000A, U + 000B, U + 000C, U + 000D a U + 0020.Valid white-space characters have the Unicode values U+0009, U+000A, U+000B, U+000C, U+000D, and U+0020. Všimněte si, že toto je podmnožina znaků, pro které metoda IsWhiteSpace(Char) vrací true.Note that this is a subset of the characters for which the IsWhiteSpace(Char) method returns true.

AllowParentheses 16

Označuje, že číselný řetězec může obsahovat jednu dvojici závorek ohraničujících číslo.Indicates that the numeric string can have one pair of parentheses enclosing the number. Kulaté závorky označují, že řetězec, který má být analyzován, představuje záporné číslo.The parentheses indicate that the string to be parsed represents a negative number.

AllowThousands 64

Označuje, že číselný řetězec může mít oddělovače skupin, například symboly, které oddělují stovky od tisíců.Indicates that the numeric string can have group separators, such as symbols that separate hundreds from thousands. Pokud hodnota NumberStyles zahrnuje příznak AllowCurrencySymbol a řetězec, který má být analyzován, obsahuje symbol měny, platný znak oddělovače skupiny je určen vlastností CurrencyGroupSeparator a počet číslic v každé skupině je určen vlastností 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. Jinak je platný znak oddělovače skupiny určený vlastností NumberGroupSeparator a počet číslic v každé skupině je určený vlastností 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 8

Označuje, že číselný řetězec může mít koncovou značku.Indicates that the numeric string can have a trailing sign. Platné koncové znaky znaménka jsou určeny vlastnostmi PositiveSign a NegativeSign.Valid trailing sign characters are determined by the PositiveSign and NegativeSign properties.

AllowTrailingWhite 2

Označuje, že koncové prázdné znaky mohou být k dispozici v analyzovaném řetězci.Indicates that trailing white-space characters can be present in the parsed string. Platné prázdné znaky mají hodnoty Unicode U + 0009, U + 000A, U + 000B, U + 000C, U + 000D a U + 0020.Valid white-space characters have the Unicode values U+0009, U+000A, U+000B, U+000C, U+000D, and U+0020. Všimněte si, že toto je podmnožina znaků, pro které metoda IsWhiteSpace(Char) vrací true.Note that this is a subset of the characters for which the IsWhiteSpace(Char) method returns true.

Any 511

Označuje, že se používají všechny styly kromě AllowHexSpecifier.Indicates that all styles except AllowHexSpecifier are used. Toto je složený styl čísla.This is a composite number style.

Currency 383

Označuje, že se používají všechny styly kromě AllowExponent a AllowHexSpecifier.Indicates that all styles except AllowExponent and AllowHexSpecifier are used. Toto je složený styl čísla.This is a composite number style.

Float 167

Indikuje, že se používají AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowDecimalPointa AllowExponent styly.Indicates that the AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowDecimalPoint, and AllowExponent styles are used. Toto je složený styl čísla.This is a composite number style.

HexNumber 515

Indikuje, že se používají styly AllowLeadingWhite, AllowTrailingWhitea AllowHexSpecifier.Indicates that the AllowLeadingWhite, AllowTrailingWhite, and AllowHexSpecifier styles are used. Toto je složený styl čísla.This is a composite number style.

Integer 7

Indikuje, že se používají styly AllowLeadingWhite, AllowTrailingWhitea AllowLeadingSign.Indicates that the AllowLeadingWhite, AllowTrailingWhite, and AllowLeadingSign styles are used. Toto je složený styl čísla.This is a composite number style.

None 0

Označuje, že v analyzovaném řetězci může být přítomen žádný prvek stylu, jako je například počáteční nebo koncové prázdné znaky, oddělovače tisíců nebo oddělovač desetinných míst.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. Řetězec, který se má analyzovat, musí obsahovat jenom celočíselné desítkové číslice.The string to be parsed must consist of integral decimal digits only.

Number 111

Indikuje, že se používají styly AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPointa AllowThousands.Indicates that the AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPoint, and AllowThousands styles are used. Toto je složený styl čísla.This is a composite number style.

Příklady

Tento příklad ukazuje, jak analyzovat řetězec na 32 celé číslo pomocí různých příznaků NumberStyles.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'.

Poznámky

Výčet NumberStyles se skládá ze dvou druhů hodnot výčtu, které se používají k analýze řetězcových reprezentace číselných hodnot:The NumberStyles enumeration consists of two kinds of enumeration values that are used to parse the string representations of numeric values:

  • Příznaky jednotlivých polí, které definují konkrétní prvky stylu (například prázdné znaky a oddělovače skupin), které mohou být k dispozici v analyzovaném řetězci.Individual field flags, which define specific style elements (such as white space and group separators) that can be present in the parsed string.

  • Složené styly čísel, které se skládají z více příznaků pole definujících prvky stylu, které mohou být přítomny v analyzovaném řetězci.Composite number styles, which consist of multiple field flags that define the style elements that can be present in the parsed string.

S výjimkou AllowHexSpecifier, příznaky jednotlivých polí v NumberStyles výčtu definují prvky stylu, které jsou použity při analýze řetězcové reprezentace desítkového čísla.Except 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 označuje, že analyzovaný řetězec může obsahovat pouze číslice.None indicates that only digits can be present in the parsed string. Zbývající příznaky jednotlivých polí definují prvky stylu, které mohou být, ale nemusí být přítomny v řetězcové reprezentaci desítkového čísla, aby operace analýzy proběhla úspěšně.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. Naproti tomu příznak AllowHexSpecifier označuje, že řetězec, který má být analyzován, je vždy interpretován jako šestnáctková hodnota.In contrast, the AllowHexSpecifier flag indicates that the string to be parsed is always interpreted as a hexadecimal value. Jediné příznaky pole, které lze použít s AllowHexSpecifier, jsou AllowLeadingWhite a AllowTrailingWhite.The only individual field flags that can be used with AllowHexSpecifier are AllowLeadingWhite and AllowTrailingWhite. Výčet NumberStyles obsahuje složený styl čísla, HexNumber, který se skládá ze všech tří příznaků.The NumberStyles enumeration includes a composite number style, HexNumber, that consists of all three flags.

Symboly (například symbol měny, oddělovač skupin, oddělovač desetinných míst a kladné a záporné znaménko), které mohou být zobrazeny v řetězci, který má být analyzován, jsou definovány členy System.Globalization.NumberFormatInfo objektu, který je předán buď implicitně, nebo explicitně do metody 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. Tabulka Members v tomto tématu obsahuje popis každého jednotlivého příznaku a označuje jeho vztah k NumberFormatInfo vlastností.The members table in this topic provides a description of each individual flag and indicates its relationship to NumberFormatInfo properties.

V následující tabulce jsou uvedeny styly složených čísel a určují, které jednotlivé příznaky pole obsahují.The following table lists the composite number styles and indicates which individual field flags they include. Znak "1" v buňce označuje, že složený styl čísla obsahuje styl individuálních čísel v daném řádku.A "1" in a cell indicates that the composite number style includes the individual number style in that row. "0" značí, že složený styl čísla nezahrnuje styl individuálního čísla.A "0" indicates that the composite number style does not include the individual number style.

LibovolnéAny MěnaCurrency FloatFloat Celé čísloInteger PočetNumber HexNumberHexNumber
Členu 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)

Platí pro

Viz také