26
將科學記數法字符串(如「1.234567E-06」)轉換爲使用C#的浮點變量的正確方法是什麼?將科學記數法字符串轉換爲C中的浮點數#
將科學記數法字符串(如「1.234567E-06」)轉換爲使用C#的浮點變量的正確方法是什麼?將科學記數法字符串轉換爲C中的浮點數#
Double.Parse("1.234567E-06", System.Globalization.NumberStyles.Float);
還要考慮使用
Double.TryParse("1.234567E-06", System.Globalization.NumberStyles.Float, out MyFloat);
這將確保MyFloat
的值設置爲0,如果出於某種原因,無法進行轉換。或者,您可以將Double.Parse()
示例包裝在Try..Catch
區塊中,並將MyFloat
設置爲檢測到異常時選擇的值。
正確的意願。謝謝。 – odbasta 2008-09-15 17:11:00
如果當前文化的小數點分隔符不是`.`,則不起作用。因此,始終工作的方法是使用`NumberStyles.Any`或(更好的)強制`InvariantCulture`:`Double.Parse(「1.234567E-06」,NumberStyles.Float,CultureInfo.InvariantCulture);` – 2013-06-10 12:48:08