Číst v angličtině

Sdílet prostřednictvím


Decimal.Parse Metoda

Definice

Převede řetězcové vyjádření čísla na jeho Decimal ekvivalent.

Přetížení

Parse(String)

Převede řetězcové vyjádření čísla na jeho Decimal ekvivalent.

Parse(ReadOnlySpan<Byte>, IFormatProvider)

Parsuje rozsah znaků UTF-8 do hodnoty.

Parse(ReadOnlySpan<Char>, IFormatProvider)

Parsuje rozsah znaků do hodnoty.

Parse(String, NumberStyles)

Převede řetězcové vyjádření čísla v zadaném stylu na jeho Decimal ekvivalent.

Parse(String, IFormatProvider)

Převede řetězcovou reprezentaci čísla na jeho Decimal ekvivalent pomocí zadaných informací o formátu specifickém pro jazykovou verzi.

Parse(ReadOnlySpan<Byte>, NumberStyles, IFormatProvider)

Parsuje rozsah znaků UTF-8 do hodnoty.

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Převede reprezentaci rozsahu čísla na jeho Decimal ekvivalent pomocí zadaného stylu a formátu specifického pro jazykovou verzi.

Parse(String, NumberStyles, IFormatProvider)

Převede řetězcovou reprezentaci čísla na jeho Decimal ekvivalent pomocí zadaného stylu a formátu specifického pro jazykovou verzi.

Parse(String)

Zdroj:
Decimal.cs
Zdroj:
Decimal.cs
Zdroj:
Decimal.cs

Převede řetězcové vyjádření čísla na jeho Decimal ekvivalent.

public static decimal Parse (string s);

Parametry

s
String

Řetězcové vyjádření čísla, které chcete převést.

Návraty

Ekvivalent čísla obsaženého v s.

Výjimky

s není ve správném formátu.

s představuje číslo menší než Decimal.MinValue nebo větší než Decimal.MaxValue.

Příklady

Následující příklad kódu používá metodu Parse(String) k analýze řetězcových reprezentací Decimal hodnot.

string value;
decimal number;
// Parse an integer with thousands separators.
value = "16,523,421";
number = Decimal.Parse(value);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '16,523,421' converted to 16523421.

// Parse a floating point value with thousands separators
value = "25,162.1378";
number = Decimal.Parse(value);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '25,162.1378' converted to 25162.1378.

// Parse a floating point number with US currency symbol.
value = "$16,321,421.75";
try
{
   number = Decimal.Parse(value);
   Console.WriteLine("'{0}' converted to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", value);
}
// Displays:
//    Unable to parse '$16,321,421.75'.

// Parse a number in exponential notation
value = "1.62345e-02";
try
{
   number = Decimal.Parse(value);
   Console.WriteLine("'{0}' converted to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", value);
}
// Displays:
//    Unable to parse '1.62345e-02'.

Poznámky

s parametru obsahuje číslo formuláře:

[ws] [znaménko] [digits,]digits[.fractional-digits][ws]

Prvky v hranatých závorkách ([ a ]) jsou volitelné. Následující tabulka popisuje jednotlivé prvky.

Element Popis
ws Volitelné prázdné znaky.
znaménko Volitelné znaménko.
číslice Posloupnost číslic v rozsahu od 0 do 9
, Symbol oddělovače tisíců specifických pro jazykovou verzi.
. Symbol desetinné čárky specifické pro jazykovou verzi.
desetinné číslice Posloupnost číslic v rozsahu od 0 do 9

s parametru se interpretuje pomocí stylu NumberStyles.Number. To znamená, že jsou povolené prázdné znaky a oddělovače tisíců, ale symboly měny nejsou. Pokud chcete explicitně definovat prvky (například symboly měny, oddělovače tisíců a prázdné znaky), které mohou být přítomné v s, použijte Decimal.Parse(String, NumberStyles) nebo metodu Decimal.Parse(String, NumberStyles, IFormatProvider).

Parametr s se parsuje pomocí informací o formátování v NumberFormatInfo inicializované pro aktuální jazykovou verzi systému. Další informace najdete v tématu CurrentInfo. K analýze řetězce pomocí informací o formátování některé jiné jazykové verze použijte Decimal.Parse(String, IFormatProvider) nebo Decimal.Parse(String, NumberStyles, IFormatProvider) metodu.

V případě potřeby se hodnota s zaokrouhlí pomocí zaokrouhlení na nejbližší.

Decimal má 29 číslic přesnosti. Pokud s představuje číslo, které má více než 29 číslic, ale má zlomkovou část a je v rozsahu MaxValue a MinValue, číslo je zaokrouhleno, není zkráceno na 29 číslic pomocí zaokrouhlení na nejbližší.

Pokud během operace analýzy je v parametru s zjištěn oddělovač a platné oddělovače desetinných míst nebo čísel a oddělovačů skupin jsou stejné, operace analýzy předpokládá, že oddělovač je oddělovač desetinných míst místo oddělovače skupiny. Další informace o oddělovači naleznete v tématu CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparatora NumberGroupSeparator.

Viz také

Platí pro

Parse(ReadOnlySpan<Byte>, IFormatProvider)

Zdroj:
Decimal.cs
Zdroj:
Decimal.cs

Parsuje rozsah znaků UTF-8 do hodnoty.

public static decimal Parse (ReadOnlySpan<byte> utf8Text, IFormatProvider? provider);

Parametry

utf8Text
ReadOnlySpan<Byte>

Rozsah znaků UTF-8 pro analýzu.

provider
IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi o utf8Text.

Návraty

Výsledek analýzy utf8Text.

Implementuje

Platí pro

Parse(ReadOnlySpan<Char>, IFormatProvider)

Zdroj:
Decimal.cs
Zdroj:
Decimal.cs
Zdroj:
Decimal.cs

Parsuje rozsah znaků do hodnoty.

public static decimal Parse (ReadOnlySpan<char> s, IFormatProvider? provider);

Parametry

s
ReadOnlySpan<Char>

Rozsah znaků, které se mají analyzovat.

provider
IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi o s.

Návraty

Výsledek analýzy s.

Implementuje

Platí pro

Parse(String, NumberStyles)

Zdroj:
Decimal.cs
Zdroj:
Decimal.cs
Zdroj:
Decimal.cs

Převede řetězcové vyjádření čísla v zadaném stylu na jeho Decimal ekvivalent.

public static decimal Parse (string s, System.Globalization.NumberStyles style);

Parametry

s
String

Řetězcové vyjádření čísla, které chcete převést.

style
NumberStyles

Bitové kombinace NumberStyles hodnot, které označují prvky stylu, které mohou být přítomny v s. Typická hodnota pro zadání je Number.

Návraty

Číslo Decimal ekvivalentní číslu obsaženému v s podle style.

Výjimky

style není NumberStyles hodnota.

-nebo-

style je hodnota AllowHexSpecifier.

s není ve správném formátu.

s představuje číslo menší než Decimal.MinValue nebo větší než Decimal.MaxValue

Příklady

Následující příklad kódu používá metodu Parse(String, NumberStyles) k analýze řetězcové reprezentace Decimal hodnot pomocí jazykové verze en-US.

string value;
decimal number;
NumberStyles style;

// Parse string with a floating point value using NumberStyles.None.
value = "8694.12";
style = NumberStyles.None;
try
{
   number = Decimal.Parse(value, style);
   Console.WriteLine("'{0}' converted to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", value);
}
// Displays:
//    Unable to parse '8694.12'.

// Parse string with a floating point value and allow decimal point.
style = NumberStyles.AllowDecimalPoint;
number = Decimal.Parse(value, style);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '8694.12' converted to 8694.12.

// Parse string with negative value in parentheses
value = "(1,789.34)";
style = NumberStyles.AllowDecimalPoint | NumberStyles.AllowThousands |
        NumberStyles.AllowParentheses;
number = Decimal.Parse(value, style);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '(1,789.34)' converted to -1789.34.

// Parse string using Number style
value = " -17,623.49 ";
style = NumberStyles.Number;
number = Decimal.Parse(value, style);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    ' -17,623.49 ' converted to -17623.49.

Poznámky

Parametr style definuje prvky stylu (například oddělovače tisíců, prázdné znaky a symboly měny), které jsou povolené v parametru s, aby operace analýzy byla úspěšná. Musí se jednat o kombinaci bitových příznaků z NumberStyles výčtu. Následující NumberStyles členy nejsou podporovány:

V závislosti na hodnotě stylemůže parametr s obsahovat následující prvky:

[ws] [$] [znaménko] [digits,]digits[.fractional-digits][e[sign]digits][ws]

Prvky v hranatých závorkách ([ a ]) jsou volitelné. Následující tabulka popisuje jednotlivé prvky.

Element Popis
ws Volitelné prázdné znaky. Prázdné znaky se můžou objevit na začátku s, pokud style obsahuje příznak NumberStyles.AllowLeadingWhite a může se zobrazit na konci s, pokud style obsahuje příznak NumberStyles.AllowTrailingWhite.
$ Symbol měny specifický pro jazykovou verzi. Jeho pozice v řetězci je definována NumberFormatInfo.CurrencyNegativePattern a NumberFormatInfo.CurrencyPositivePattern vlastnosti aktuální jazykové verze. Symbol měny aktuální jazykové verze se může zobrazit v s, pokud style obsahuje příznak NumberStyles.AllowCurrencySymbol.
znaménko Volitelné znaménko. Znaménko se může zobrazit na začátku s, pokud style obsahuje příznak NumberStyles.AllowLeadingSign a může se zobrazit na konci s, pokud style obsahuje příznak NumberStyles.AllowTrailingSign. Závorky lze použít v s k označení záporné hodnoty, pokud style obsahuje příznak NumberStyles.AllowParentheses.
číslice Posloupnost číslic v rozsahu od 0 do 9
, Symbol oddělovače tisíců specifických pro jazykovou verzi. Oddělovač tisíců aktuální jazykové verze se může zobrazit v s, pokud style obsahuje příznak NumberStyles.AllowThousands.
. Symbol desetinné čárky specifické pro jazykovou verzi. Symbol desetinné čárky aktuální jazykové verze se může zobrazit v s, pokud style obsahuje příznak NumberStyles.AllowDecimalPoint.
desetinné číslice Posloupnost číslic v rozsahu od 0 do 9 Desetinná číslice se můžou v s zobrazovat jenom v případě, že style obsahuje příznak NumberStyles.AllowDecimalPoint.
e Znak "e" nebo "E", který označuje, že hodnota je reprezentována exponenciálním zápisem. Parametr s může představovat číslo v exponenciálním zápisu, pokud style obsahuje příznak NumberStyles.AllowExponent.

Poznámka

Všechny ukončující NUL (U+0000) znaky v s jsou ignorovány operací analýzy bez ohledu na hodnotu argumentu style.

Řetězec pouze s číslicemi (který odpovídá stylu None) se vždy úspěšně parsuje, pokud je v rozsahu typu Decimal. Zbývající NumberStyles členy ovládací prvky, které mohou být, ale nemusí být přítomny ve vstupním řetězci. Následující tabulka uvádí, jak jednotlivé NumberStyles členy ovlivňují prvky, které mohou být přítomny v s.

Hodnota NumberStyles Prvky povolené v s kromě číslic
None Pouze číslice prvek.
AllowDecimalPoint . a desetinné číslice prvky.
AllowExponent Parametr s může také použít exponenciální zápis. Tento příznak podporuje hodnoty ve formuláři číslicčíslice E; K úspěšnému parsování řetězců s prvky, jako jsou kladná nebo záporná znaménka a symboly desetinné čárky, jsou potřeba další příznaky.
AllowLeadingWhite Prvek ws na začátku s.
AllowTrailingWhite Prvek ws na konci s.
AllowLeadingSign Znak prvek na začátku s.
AllowTrailingSign Znak prvek na konci s.
AllowParentheses Znak prvek ve formě závorek ohraničující číselnou hodnotu.
AllowThousands Prvek ,.
AllowCurrencySymbol Prvek $.
Currency Všichni. Parametr s nemůže představovat šestnáctkové číslo nebo číslo v exponenciálním zápisu.
Float Prvek ws na začátku nebo konci s, znaménko na začátku sa symbol .. Parametr s může také použít exponenciální zápis.
Number Prvky ws, sign, , a ..
Any Všechny styly s výjimkou s nemohou představovat šestnáctkové číslo.

Parametr s se parsuje pomocí informací o formátování v objektu NumberFormatInfo inicializovaném pro aktuální jazykovou verzi systému. Další informace najdete v tématu CurrentInfo.

Decimal má 29 číslic přesnosti. Pokud s představuje číslo, které má více než 29 číslic, ale má zlomkovou část a je v rozsahu MaxValue a MinValue, číslo je zaokrouhleno, není zkráceno na 29 číslic pomocí zaokrouhlení na nejbližší.

Pokud se během operace analýzy zjistí oddělovač v parametru s, styles obsahuje hodnoty NumberStyles.AllowThousands a NumberStyles.AllowDecimalPoint a příslušné oddělovače desetinných míst nebo čísel a oddělovačů skupin jsou stejné, operace analýzy předpokládá, že oddělovač je oddělovač desetinných míst, nikoli oddělovač skupin. Další informace o oddělovači naleznete v tématu CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparatora NumberGroupSeparator.

Viz také

Platí pro

Parse(String, IFormatProvider)

Zdroj:
Decimal.cs
Zdroj:
Decimal.cs
Zdroj:
Decimal.cs

Převede řetězcovou reprezentaci čísla na jeho Decimal ekvivalent pomocí zadaných informací o formátu specifickém pro jazykovou verzi.

public static decimal Parse (string s, IFormatProvider provider);
public static decimal Parse (string s, IFormatProvider? provider);

Parametry

s
String

Řetězcové vyjádření čísla, které chcete převést.

provider
IFormatProvider

IFormatProvider, která poskytuje informace o analýze specifické pro jazykovou verzi o s.

Návraty

Číslo Decimal ekvivalentní číslu obsaženému v s podle provider.

Implementuje

Výjimky

s není správný formát.

s představuje číslo menší než Decimal.MinValue nebo větší než Decimal.MaxValue.

Příklady

Následující příklad je obslužná rutina události kliknutí na tlačítko webového formuláře. Používá pole vrácené vlastností HttpRequest.UserLanguages k určení národního prostředí uživatele. Potom vytvoří instanci CultureInfo objektu, který odpovídá danému národnímu prostředí. Objekt NumberFormatInfo, který patří do objektu CultureInfo, se pak předá metodě Parse(String, IFormatProvider), která převede vstup uživatele na hodnotu Decimal.

protected void OkToDecimal_Click(object sender, EventArgs e)
{
    string locale;
    decimal number;
    CultureInfo culture;

    // Return if string is empty
    if (String.IsNullOrEmpty(this.inputNumber.Text))
        return;

    // Get locale of web request to determine possible format of number
    if (Request.UserLanguages.Length == 0)
        return;
    locale = Request.UserLanguages[0];
    if (String.IsNullOrEmpty(locale))
        return;

    // Instantiate CultureInfo object for the user's locale
    culture = new CultureInfo(locale);

    // Convert user input from a string to a number
    try
    {
        number = Decimal.Parse(this.inputNumber.Text, culture.NumberFormat);
    }
    catch (FormatException)
    {
        return;
    }
    catch (Exception)
    {
        return;
    }
    // Output number to label on web form
    this.outputNumber.Text = "Number is " + number.ToString();
}

Poznámky

Toto přetížení Parse(String, IFormatProvider) metody se běžně používá k převodu textu, který lze formátovat různými způsoby na hodnotu Decimal. Dá se například použít k převodu textu zadaného uživatelem do textového pole HTML na číselnou hodnotu.

Parametr s obsahuje číslo formuláře:

[ws] [znaménko] [digits,]digits[.fractional-digits][ws]

Prvky v hranatých závorkách ([ a ]) jsou volitelné. Následující tabulka popisuje jednotlivé prvky.

Element Popis
ws Volitelné prázdné znaky.
znaménko Volitelné znaménko.
číslice Posloupnost číslic v rozsahu od 0 do 9
, Symbol oddělovače tisíců specifických pro jazykovou verzi.
. Symbol desetinné čárky specifické pro jazykovou verzi.
desetinné číslice Posloupnost číslic v rozsahu od 0 do 9

Parametr s se interpretuje pomocí stylu NumberStyles.Number. To znamená, že jsou povolené prázdné znaky a oddělovače tisíců, ale symboly měny nejsou. Pokud chcete explicitně definovat prvky (například symboly měny, oddělovače tisíců a prázdné znaky), které mohou být přítomné v s, použijte metodu Decimal.Parse(String, NumberStyles, IFormatProvider).

Parametr provider je IFormatProvider implementace, například NumberFormatInfo nebo objekt CultureInfo. Parametr provider poskytuje informace specifické pro jazykovou verzi používané při analýze. Pokud je providernull, použije se aktuální jazyková verze vlákna.

Objekt Decimal má 29 číslic přesnosti. Pokud s představuje číslo, které má více než 29 číslic, ale má zlomkovou část a je v rozsahu MaxValue a MinValue, číslo je zaokrouhleno, není zkráceno na 29 číslic pomocí zaokrouhlení na nejbližší.

Pokud je v parametru s během operace analýzy zjištěn oddělovač a platné oddělovače desetinných míst nebo čísel a oddělovačů skupin jsou stejné, operace analýzy předpokládá, že oddělovač je oddělovač desetinných míst místo oddělovače skupiny. Další informace o oddělovači naleznete v tématu CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparatora NumberGroupSeparator.

Viz také

Platí pro

Parse(ReadOnlySpan<Byte>, NumberStyles, IFormatProvider)

Zdroj:
Decimal.cs
Zdroj:
Decimal.cs

Parsuje rozsah znaků UTF-8 do hodnoty.

public static decimal Parse (ReadOnlySpan<byte> utf8Text, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Number, IFormatProvider? provider = default);

Parametry

utf8Text
ReadOnlySpan<Byte>

Rozsah znaků UTF-8 pro analýzu.

style
NumberStyles

Bitové kombinace stylů čísel, které mohou být přítomny v utf8Text.

provider
IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi o utf8Text.

Návraty

Výsledek analýzy utf8Text.

Implementuje

Platí pro

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Zdroj:
Decimal.cs
Zdroj:
Decimal.cs
Zdroj:
Decimal.cs

Převede reprezentaci rozsahu čísla na jeho Decimal ekvivalent pomocí zadaného stylu a formátu specifického pro jazykovou verzi.

public static decimal Parse (ReadOnlySpan<char> s, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Number, IFormatProvider? provider = default);
public static decimal Parse (ReadOnlySpan<char> s, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Number, IFormatProvider provider = default);

Parametry

s
ReadOnlySpan<Char>

Rozsah obsahující znaky představující číslo, které se má převést.

style
NumberStyles

Bitové kombinace NumberStyles hodnot, které označují prvky stylu, které mohou být přítomny v s. Typická hodnota pro zadání je Number.

provider
IFormatProvider

Objekt IFormatProvider, který poskytuje informace specifické pro jazykovou verzi o formátu s.

Návraty

Číslo Decimal odpovídající číslu obsaženému v s podle style a provider.

Implementuje

Platí pro

Parse(String, NumberStyles, IFormatProvider)

Zdroj:
Decimal.cs
Zdroj:
Decimal.cs
Zdroj:
Decimal.cs

Převede řetězcovou reprezentaci čísla na jeho Decimal ekvivalent pomocí zadaného stylu a formátu specifického pro jazykovou verzi.

public static decimal Parse (string s, System.Globalization.NumberStyles style, IFormatProvider provider);
public static decimal Parse (string s, System.Globalization.NumberStyles style, IFormatProvider? provider);

Parametry

s
String

Řetězcové vyjádření čísla, které chcete převést.

style
NumberStyles

Bitové kombinace NumberStyles hodnot, které označují prvky stylu, které mohou být přítomny v s. Typická hodnota pro zadání je Number.

provider
IFormatProvider

Objekt IFormatProvider, který poskytuje informace specifické pro jazykovou verzi o formátu s.

Návraty

Číslo Decimal odpovídající číslu obsaženému v s podle style a provider.

Implementuje

Výjimky

s není ve správném formátu.

s představuje číslo menší než Decimal.MinValue nebo větší než Decimal.MaxValue.

style není NumberStyles hodnota.

-nebo-

style je hodnota AllowHexSpecifier.

Příklady

Následující příklad používá k analýze řetězcových reprezentací hodnot Decimal různé parametry style a provider.

string value;
decimal number;
NumberStyles style;
CultureInfo provider;

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

number = Decimal.Parse(value, style, provider);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '892 694,12' converted to 892694.12.

try
{
   number = Decimal.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 '892 694,12'.

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

try
{
   number = Decimal.Parse(value, style, provider);
   Console.WriteLine("'{0}' converted to {1}.", value, number);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", value);
}
// Displays:
//    Unable to parse '$6,032.51'.

provider = new CultureInfo("en-US");
number = Decimal.Parse(value, style, provider);
Console.WriteLine("'{0}' converted to {1}.", value, number);
// Displays:
//    '$6,032.51' converted to 6032.51.

Poznámky

Parametr style definuje povolený formát parametru s pro úspěšnou operaci analýzy. Musí se jednat o kombinaci bitových příznaků z NumberStyles výčtu. Následující NumberStyles členy nejsou podporovány:

V závislosti na hodnotě stylemůže parametr s obsahovat následující prvky:

[ws] [$] [znaménko] [digits,]digits[.fractional-digits][e[sign]digits][ws]

Prvky v hranatých závorkách ([ a ]) jsou volitelné. Následující tabulka popisuje jednotlivé prvky.

Element Popis
$ Symbol měny specifický pro jazykovou verzi. Jeho pozice v řetězci je definována CurrencyNegativePattern a CurrencyPositivePattern vlastnosti NumberFormatInfo objekt vrácený GetFormat metodou parametru provider. Symbol měny se může zobrazit v s, pokud style obsahuje příznak NumberStyles.AllowCurrencySymbol.
ws Volitelné prázdné znaky. Prázdné znaky se můžou objevit na začátku s, pokud style obsahuje příznak NumberStyles.AllowLeadingWhite a může se zobrazit na konci s, pokud style obsahuje příznak NumberStyles.AllowTrailingWhite.
znaménko Volitelné znaménko. Znaménko se může zobrazit na začátku s, pokud style obsahuje příznak NumberStyles.AllowLeadingSign a může se zobrazit na konci s, pokud style obsahuje příznak NumberStyles.AllowTrailingSign. Závorky lze použít v s k označení záporné hodnoty, pokud style obsahuje příznak NumberStyles.AllowParentheses.
číslice Posloupnost číslic v rozsahu od 0 do 9
, Symbol oddělovače tisíců specifických pro jazykovou verzi. Oddělovač tisíců jazykové verze definované provider se může zobrazit v s, pokud style obsahuje příznak NumberStyles.AllowThousands.
. Symbol desetinné čárky specifické pro jazykovou verzi. Symbol desetinné čárky jazykové verze definované provider se může objevit v s, pokud style obsahuje příznak NumberStyles.AllowDecimalPoint.
desetinné číslice Posloupnost číslic v rozsahu od 0 do 9 Desetinná číslice se můžou v s zobrazovat jenom v případě, že style obsahuje příznak NumberStyles.AllowDecimalPoint.
e Znak "e" nebo "E", který označuje, že hodnota je reprezentována exponenciálním zápisem. Parametr s může představovat číslo v exponenciálním zápisu, pokud style obsahuje příznak NumberStyles.AllowExponent.

Poznámka

Všechny ukončující NUL (U+0000) znaky v s jsou ignorovány operací analýzy bez ohledu na hodnotu argumentu style.

Řetězec pouze s číslicemi (který odpovídá stylu None) se vždy úspěšně parsuje, pokud je v rozsahu typu Decimal. Zbývající NumberStyles členy ovládací prvky, které mohou být, ale nemusí být přítomny ve vstupním řetězci. Následující tabulka uvádí, jak jednotlivé NumberStyles členy ovlivňují prvky, které mohou být přítomny v s.

Hodnota NumberStyles Prvky povolené v s kromě číslic
None Pouze číslice prvek.
AllowDecimalPoint . a desetinné číslice prvky.
AllowExponent Parametr s může také použít exponenciální zápis. Tento příznak podporuje hodnoty ve formuláři číslicčíslice E; K úspěšnému parsování řetězců s prvky, jako jsou kladná nebo záporná znaménka a symboly desetinné čárky, jsou potřeba další příznaky.
AllowLeadingWhite Prvek ws na začátku s.
AllowTrailingWhite Prvek ws na konci s.
AllowLeadingSign Znak prvek na začátku s.
AllowTrailingSign Znak prvek na konci s.
AllowParentheses Znak prvek ve formě závorek ohraničující číselnou hodnotu.
AllowThousands Prvek ,.
AllowCurrencySymbol Prvek $.
Currency Všichni. Parametr s nemůže představovat šestnáctkové číslo nebo číslo v exponenciálním zápisu.
Float Prvek ws na začátku nebo konci s, znak na začátku sa . symbol. Parametr s může také použít exponenciální zápis.
Number ws, sign, ,a . elementy.
Any Všechny styly s výjimkou s nemohou představovat šestnáctkové číslo.

Parametr provider je IFormatProvider implementace, například NumberFormatInfo nebo objekt CultureInfo. Parametr provider poskytuje informace specifické pro jazykovou verzi používané při analýze. Pokud je providernull, použije se aktuální jazyková verze vlákna.

Objekt Decimal má 29 číslic přesnosti. Pokud s představuje číslo, které má více než 29 číslic, ale má zlomkovou část a je v rozsahu MaxValue a MinValue, číslo je zaokrouhleno, není zkráceno na 29 číslic pomocí zaokrouhlení na nejbližší.

Pokud je v parametru s během operace analýzy zjištěn oddělovač a platné oddělovače desetinných míst nebo čísel a oddělovačů skupin jsou stejné, operace analýzy předpokládá, že oddělovač je oddělovač desetinných míst místo oddělovače skupiny. Další informace o oddělovači naleznete v tématu CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparatora NumberGroupSeparator.

Viz také

Platí pro