decimal decimalVal;
Decimal.TryParse("123-", out decimalVal);
Console.WriteLine(decimalVal); // -123
Perché la stringa "123-" è analizzata in questo modo?Decimale. Stringa Parse, postfixed da un segno meno
decimal decimalVal;
Decimal.TryParse("123-", out decimalVal);
Console.WriteLine(decimalVal); // -123
Perché la stringa "123-" è analizzata in questo modo?Decimale. Stringa Parse, postfixed da un segno meno
Il Decimal.TryParse Method analizza l'input con NumberStyles.Number per impostazione predefinita. NumberStyles.Number include NumberStyles.AllowTrailingSign.
Decimal.TryParse Method (String, decimale)
[...]
parametro s viene interpretato utilizzando lo stile NumberStyles.Number.
[...]
Numero Indica che gli stili AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPoint e AllowThousands vengono utilizzati. Questo è uno stile di numero composito.
AllowTrailingSign Indica che la stringa numerica può avere un segno finale. I caratteri di segno finale validi sono determinati dalle proprietà NumberFormatInfo.PositiveSign e NumberFormatInfo.NegativeSign.
Questo è un formato accettato per Decimal.Parse
. L'opzione style
per il metodo Parse
consente segni iniziali e finali.
Per saperne di più: http://msdn.microsoft.com/en-us/library/91fwbcsb.aspx
NumberStyles.Number enumeratore viene utilizzato per impostazione predefinita:
Indica che gli stili AllowLeadingWhite, AllowTrailingWhite, AllowLeadingSign, AllowTrailingSign, AllowDecimalPoint e AllowThousands vengono utilizzati. Questo è uno stile di numero composito
http://msdn.microsoft.com/en-us/library/system.globalization.numberstyles.aspx
Grazie per una buona spiegazione! – rpeshkov