0

問題があります。値を含む文字列があり、それらを double 配列に分割したいのです。

入力:0.0 0.0 0.0

2つの方法がありますが、どちらも機能していません

初め :

                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

2番 :

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

FormatExeption 例外が発生します 助けてください .obj ローダー用です

4

1 に答える 1

2

現在のカルチャでは、別の小数点記号が使用されている可能性があります。ToDoubleフォーマットプロバイダーを使用するのオーバーロードを使用します。

Convert.ToDouble(num, CultureInfo.InvariantCulture)

(このInvariantCultureプロパティは、英語の設定に基づくニュートラルなカルチャ情報を返すため、小数点としてピリオドを使用します。)

于 2012-08-04T19:03:19.160 に答える