我有一个浮点数组,它是一个[] []和一个临时读数组,它是b []。我的数据是这样的:二维字符串数组浮点数组c#
1 1 6 4 12 5 5 3 4 1 67 3 2 1 2 1 0 0 1 0 0 1 0 0 1
2 2 48 2 60 1 3 2 2 1 22 3 1 1 1 1 0 0 1 0 0 1 0 0 1
1 4 12 4 21 1 4 3 3 1 49 3 1 2 1 1 0 0 1 0 0 1 0 1 0
1 1 42 2 79 1 4 3 4 2 45 3 1 2 1 1 0 0 0 0 0 0 0 0 1
2 1 24 3 49 1 3 3 4 4 53 3 2 2 1 1 1 0 1 0 0 0 0 0 1
1 4 36 2 91 5 3 3 4 4 35 3 1 2 2 1 0 0 1 0 0 0 0 1 0
1 4 24 2 28 3 5 3 4 2 53 3 1 1 1 1 0 0 1 0 0 1 0 0 1
1 2 36 2 69 1 3 3 2 3 35 3 1 1 2 1 0 1 1 0 1 0 0 0 0
1 4 12 2 31 4 4 1 4 1 61 3 1 1 1 1 0 0 1 0 0 1 0 1 0
2 2 30 4 52 1 1 4 2 3 28 3 2 1 1 1 1 0 1 0 0 1 0 0 0
2 2 12 2 13 1 2 2 1 3 25 3 1 1 1 1 1 0 1 0 1 0 0 0 1
2 1 48 2 43 1 2 2 4 2 24 3 1 1 1 1 0 0 1 0 1 0 0 0 1
1 2 12 2 16 1 3 2 1 3 22 3 1 1 2 1 0 0 1 0 0 1 0 0 1
2 1 24 4 12 1 5 3 4 3 60 3 2 1 1 1 1 0 1 0 0 1 0 1 0
我的代码是在这里:
for(int i = 0 ; i < linecount ; i++)
{
string[] b = sr.ReadLine().Split(' ');
for(int j = 0 ; j < b.Length ; j++)
{
a[i,j]= float.Parse(b[ j ]);
}
}
它给我这个错误:
型 'System.FormatException' 未处理的异常发生在 mscorlib.dll
附加信息:输入字符串格式不正确。
这个问题在互联网上的大部分是关于123124.23234而不是123124,23234,但我的号码是整数。我该怎么做? 谢谢!
的[可能的复制为什么我得到一个字符串转换时出现FormatException一个浮动?](http://stackoverflow.com/questions/5592950/why-do-i-get-a-formatexception-when-converting-a-string-to-a-float) – MickyD
a [i,j] = float.Parse(b [j],CultureInfo.InvariantCulture); 给我完全相同的错误。随着“使用System.Globalization;”对?他们也都是整数。 –
你需要在铸造前修剪你的b [j]值,就好像你在数字之间有多个空格一样会产生像“2”这样的字符串,并且你的程序会因为这个异常而失败。更改float.Parse(b [j]); float.Parse(b [j] .Trim()); – Hakunamatata