ええ、信じがたいことはわかっています - .NET のバグですか? ただし、コマンド ライン アプリで次のコードを実行します。
10 進数 x; x = decimal.Parse("3.E-2", NumberStyles.Float); Console.WriteLine(x); x = decimal.Parse("5.72e9", NumberStyles.Float); Console.WriteLine(x); x = decimal.Parse("3.E−2", NumberStyles.Float); Console.WriteLine(x);
最後の解析中に例外が発生しました。言います:
System.FormatException : 入力文字列が正しい形式ではありませんでした。
最初と最後の解析の値はまったく同じです。.NET 3.5 および 4 向けにコンパイルされた 2 つの異なる x64 マシンでテスト済み。
何が起こっているのですか?回避策はありますか?