ノルウェーの通貨(kr)を10進数に解析するにはどうすればよいですか?
私はこれらを解析しようとしています:
477,60
2.320,00
このコードは機能せず、解析のカルチャとしてノルウェーを指定したにもかかわらず、10進数の解析例外をスローします。
Convert.ToDecimal("2.320,00", System.Globalization.CultureInfo.GetCultureInfo("nb-NO"))
したがって、ノルウェーの文化には定義がありませんNumberFormat.NumberGroupSeparator
。そのため、この例外が発生します。したがって、それらを定義する必要があります。
CultureInfo info = CultureInfo.CreateSpecificCulture("nb-NO");
var numberFormat = info.NumberFormat;
numberFormat.NumberGroupSeparator = ".";
numberFormat.CurrencyGroupSeparator = ".";//this if you are using currency
numberFormat.PercentGroupSeparator = ".";//this for percentages
その後、decimal.TryParse
方法を使用してみてください:
decimal result = 0;
decimal.TryParse("2.320,00", NumberStyles.AllowDecimalPoint|NumberStyles.AllowThousands, info, out result);
ここに完全な例
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加