double を 10 の累乗表現なしで string に変換する方法 (E-05)
double value = 0.000099999999833333343;
string text = value.ToString();
Console.WriteLine(text); // 9,99999998333333E-05
文字列のテキストを 0.000099999999833333343 にしたいです (またはそれに近い、私はロケット科学をやっていません:)
次のバリアントを試しました
Console.WriteLine(value.ToString()); // 9,99999998333333E-05
Console.WriteLine(value.ToString("R20")); // 9,9999999833333343E-05
Console.WriteLine(value.ToString("N20")); // 0,00009999999983333330
Console.WriteLine(String.Format("{0:F20}", value)); // 0,00009999999983333330
N20 を文字列にするか、F20 をフォーマットするのが、私が望むものに最も近いように思えますが、多くの末尾のゼロになってしまいます。これを回避する賢い方法はありますか? double 表現にできるだけ近づけたい 0.000099999999833333343