在不同的區域中使用Convert.ToDouble可能會產生問題。 string str = "20.0"; double val = Convert.ToDouble(str); 比如在某些區域語言中得到的結果是200,如: Thread.CurrentThread.CurrentCulture ...
在不同的區域中使用Convert.ToDouble可能會產生問題。
string str = "20.0";
double val = Convert.ToDouble(str);
比如在某些區域語言中得到的結果是200,如:
Thread.CurrentThread.CurrentCulture =new CultureInfo("vi");
正確的做法是忽略區域,使用重載:
string str = "20.0";
double val = Convert.ToDouble(str, CultureInfo.InvariantCulture);
這樣得到的結果就是正確的20.0