文字列10.00があり、それをdouble10.00に変換したいと思います。
私が使う :
string str = "10.00";
double db = double.Parse(str);
私が得る結果は10.0であり、10.00ではありません。
文字列10.00があり、それをdouble10.00に変換したいと思います。
私が使う :
string str = "10.00";
double db = double.Parse(str);
私が得る結果は10.0であり、10.00ではありません。
Parse
と数値はTryParse
地域の文化設定を尊重します。これは、オブジェクトを指定することで変更できCultureInfo
ます。たとえば、ドイツでは、ダブルギブに解析2.999
すると次のようになります。2999
Console.WriteLine (double.Parse ("2.999")); // 2999 (In Germany)
これは、ドイツでは、ピリオドが小数点ではなく千単位の区切り文字を示しているためです。不変のカルチャを指定すると、これが修正されます。
double x = double.Parse ("2.999", CultureInfo.InvariantCulture);
呼び出すときも同じToString()
です:
string x = 2.9999.ToString (CultureInfo.InvariantCulture);
ダブルは文字列ではありません。doubleを文字列として表示する場合は、小数点以下2桁になるようにフォーマットできます。
例えば:
string str = "10.00";
double db = double.Parse(str);
String.Format("{0:0.00}", db); // will show 10.00
質問はあまり明確ではありませんが、小数点以下2桁の精度でダブルを文字列に戻すことを指している場合は、次を使用できます。
string str = "10.00"
double db = double.parse(str);
string convertedBack = db.ToString("0.00");