2012-10-02 34 views
1

我有一個字符串10.00,我想將其轉換爲雙倍10.00。double.parse將兩個零點十進制轉換爲一個小數點

我用:

string str = "10.00"; 
double db = double.Parse(str); 

結果我得到的是10.0,而不是10.00。

+1

庵,10 = 10.0 = 10.00。 –

+0

好的,我認爲它仍然可以接受。 – Alvin

+1

雷蒙德,投下真相炸彈! –

回答

2

double不是一個字符串。如果要將double顯示爲字符串,則可以將其格式化爲具有兩個小數點。

例如:

string str = "10.00"; 
double db = double.Parse(str); 
String.Format("{0:0.00}", db); // will show 10.00 
1

問題是不是真的不清楚,但如果你是指改變雙回線與2小數位精確,您可以使用:

string str = "10.00" 
double db = double.parse(str); 
string convertedBack = db.ToString("0.00"); 
5

關於數字方面的ParseTryParse關於本地文化設置;你可以通過指定一個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); 
相關問題