.NET:解析本地化货币

Jam*_*ead 6 .net c# localization

假设我有一个string,这个string价值就是一定数量的金钱,本地化.通过本地化,我的意思是,如果该国家可能使用逗号而不是小数点,例如.(这只是我知道的一个本地化差异.)

我怎样才能将这些中string的一个解析为它们decimal的数字等价物?会decimal.TryParse()识别本地化格式吗?如何指定CultureInfowith TryParse()

Fre*_*örk 7

以下是decimal.TryParse指定的示例CultureInfo(在本例中为瑞典语):

string s = "10,95";
decimal d;
if (decimal.TryParse(s, NumberStyles.Number, CultureInfo.GetCultureInfo("sv-SE"),out d))
{
    Console.WriteLine(d);
} 
Run Code Online (Sandbox Code Playgroud)