2012-08-04 148 views
0

我遇到問題:我有一個包含值的字符串,我想將它們拆分爲一個雙數組。將字符串拆分爲雙數組

輸入:0.0 0.0 0.0

我有兩種方式,但兩者都沒有工作

第一:

   Dim arrString As String() = line.Split(New Char() {" "c}) 
       Dim numbers As Double() = New Double(arrString.Length) {} 
       Dim i As Integer = 0 
       While i < arrString.Length 
        numbers(i) = Convert.ToDouble(arrString(i)) 
        i += 1 
       End While 

二:

   Dim nums As String() = line.Split(" "c) 
       Dim numbers As Double() = From num In nums Select Convert.ToDouble(num) 

我得到一個FormatExeption exeption 請幫助我,它的.obj loader

回答

2

當前文化可能使用不同的小數點分隔符。使用接受的格式提供的ToDouble過載:

Convert.ToDouble(num, CultureInfo.InvariantCulture) 

(該InvariantCulture屬性返回根據英國設置的區域性信息,所以它使用期爲小數分隔符。)

+0

對不起,我試圖msgbox行的值,它返回「v」而不是「0.0 0.0 0.0」,所以錯誤來自這裏: 對於每行作爲字符串行 如果line.StartsWith(「v」)然後 line.Replace(「v」,「」) – Devintelo 2012-08-04 23:12:10