我有一個簡單的問題,我一直無法弄清楚。我有一個應該從輸入讀取浮點數的程序。問題是它會以字符串的形式出現,我不能爲我的生活弄清楚如何將它轉換爲浮動(是的,我是一個完整的newb)。F#將字符串轉換爲浮點數
let searchString = args.[0]
let myFloat = hmm hmmm hmmmm
我有一個簡單的問題,我一直無法弄清楚。我有一個應該從輸入讀取浮點數的程序。問題是它會以字符串的形式出現,我不能爲我的生活弄清楚如何將它轉換爲浮動(是的,我是一個完整的newb)。F#將字符串轉換爲浮點數
let searchString = args.[0]
let myFloat = hmm hmmm hmmmm
let myFloat = float searchString
這麼簡單。
請參閱@Thomas。浮動字符串表示取決於文化。 – 2013-06-05 22:24:29
解析失敗時會發生什麼? – fahadash 2014-07-13 19:52:44
@fahadash拋出System.FormatException異常。 – 2014-07-14 16:06:35
在conversion in the other way上有一個相關的問題。這有點棘手,因爲浮點格式取決於當前的操作系統文化。 float
函數適用於不變文化格式的數字(如「3.14」)。如果您有依賴於文化的格式(例如,某些國家/地區爲「3,14」),則需要使用Single.Parse
。
例如,我的機器上(與捷克文化設置,使用「3,14」):
> float "1.1";;
val it : float = 1.1
> System.Single.Parse("1,1");;
val it : float32 = 1.10000002f
兩個函數拋出異常,如果所謂的其他方式輪。 Parse
方法也有一個過載,其中需要CultureInfo
,您可以在其中明確指定文化
要格式化代碼,請在每行之前放置四個空格,或選擇它並在編輯器中按下按鈕。有關更多格式化幫助,請參閱[Markdown編輯幫助](http://stackoverflow.com/editing-help)頁面。 – 2011-04-10 19:46:38