這是我的代碼,我得到這個錯誤:「輸入字符串的格式不正確。」C#中的雙類型解析錯誤#
var variable1= double.Parse("0.03".ToString(CultureInfo.InvariantCulture));
但對於這個代碼我沒有得到錯誤:
var variable1= double.Parse("0.03",CultureInfo.InvariantCulture);
有什麼原因呢?
這是我的代碼,我得到這個錯誤:「輸入字符串的格式不正確。」C#中的雙類型解析錯誤#
var variable1= double.Parse("0.03".ToString(CultureInfo.InvariantCulture));
但對於這個代碼我沒有得到錯誤:
var variable1= double.Parse("0.03",CultureInfo.InvariantCulture);
有什麼原因呢?
"0.03".ToString(CultureInfo.InvariantCulture)
評估爲"0.03"
綜觀隔離這個表達式,你可以看到什麼是錯的。你爲什麼要在字符串上調用ToString()
?調用ToString()
on a string只是返回原始字符串。
無論如何,繼續前進。因此,您的函數調用相同
double.Parse("0.03")
而這可能會導致一個錯誤,因爲當地的小數點分隔符不"."
。
你的意思是寫
double.Parse("0.03", CultureInfo.InvariantCulture)
這並不拋出異常。你在尋找'var sss = double.Parse(「0.03」,CultureInfo.InvariantCulture);'? –
我檢查了一下,我應該更詳細地描述我的問題 –
@SonerGönül:它可能不會爲* you *拋出異常,但是如果當前文化不使用'.'作爲小數點分隔符,它會拋出異常。 –