var doubleMaxValueString = double.MaxValue.ToString(CultureInfo.InvariantCulture);
,我想將其轉換回雙,所以我在做這樣的:轉換雙字符串返回到一倍
,但它不工作...
我如何將它轉換回雙倍?
謝謝!
編輯: 它會拋出:OverflowExceptionValue:對於Double來說太大或太小。
我使用VAR,因爲它更實用=)
var doubleMaxValueString = double.MaxValue.ToString(CultureInfo.InvariantCulture);
,我想將其轉換回雙,所以我在做這樣的:轉換雙字符串返回到一倍
,但它不工作...
我如何將它轉換回雙倍?
謝謝!
編輯: 它會拋出:OverflowExceptionValue:對於Double來說太大或太小。
我使用VAR,因爲它更實用=)
你可以找到很好的解釋here。基本上問題是,在將double
轉換爲string
時,我們正在將其舍入,因此它超過了double.MaxValue
。您可以通過這種方式解決,例如:在「R」的說法
var doubleMaxValueString = double.MaxValue.ToString("R", CultureInfo.InvariantCulture);
var doubleMaxValue = double.Parse(doubleMaxValueString, CultureInfo.InvariantCulture);
的更多信息,以及爲什麼它可以幫助發現here on msdn
你能更具體的不是「不工作」?它拋出異常嗎?你沒有得到你期望的價值嗎?不相關:我也很好奇你爲什麼選擇在這些情況下使用'var',因爲你知道這兩個函數返回的類型是什麼(但也許別人可以提供一個關於這個)。 – eldarerathis 2011-03-30 20:10:23
你爲什麼這樣做?爲什麼你不會在第二個例子中使用'double.MaxValue'? – 2011-03-30 20:17:47
我正在創建一個系統,用戶可以在其中鍵入一個值並選擇其類型,在這種情況下,我在測試時出現此錯誤...這就是爲什麼......我只是想了解爲什麼它不起作用。 – Bruno 2011-03-30 20:19:41