質問

どのように変換するdouble文字列なの10表現(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   

いtostring20形式F20るように最も近いしたいことが、終わる多くの末尾のゼロがあるのでマテリアルの使い方を回避す。いてみたいと思いしないようにしてダブルとしての表現を可能に0.000099999999833333343

役に立ちましたか?

解決

使用 文字列になります。形式()フォーマット指定子.たいと思います{0:F20}います。

string formatted = String.Format("{0:F20}", value);

他のヒント

あなたはstring.Format()は必要ありません。ただ、既存の.ToString()方法で右フォーマット文字列を置きます。 "N" のような何かを行う必要があります。

どの程度

Convert.ToDecimal(doubleValue).ToString()

、適切な書式指定子でstring.Formatを使用してください。

このブログ記事は、多くの例があります:ます。http: //blogs.msdn.com/kathykam/archive/2006/03/29/564426.aspxする

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top