for(int k=0;k<14;k++)
{
arr17[k]=double.Parse(arr4[k]); arr18[k]=double.Parse(arr3[k]);
arr19[k]=double.Parse(arr8[k]);arr20[k]=double.Parse(arr7[k]);
arr21[k]=double.Parse(arr5[k]); arr22[k]=double.Parse(arr9[k]);
arr23[k]=double.Parse(arr2[k]);
arr24[k]=Math.Round(arr17[k]/arr18[k]);
arr25[k]=Math.Round(arr19[k]/arr20[k]);
arr26[k]=Math.Round(arr21[k]+arr22[k]); 
arr27[k]=Math.Round(arr26[k]/arr23[k]);
}在上面代码的“K++”处,出现以下错误
“未处理的“System.FormatException”类型的异常出现在 mscorlib.dll 中。其他信息: 输入字符串的格式不正确”
大家看看怎么回事啊

解决方案 »

  1.   

    某个double.Parse()里面的字符串不能正确转换为double吧,
    你看看double.Parse("aa')的异常提示是否一样
      

  2.   

    可能是原始数据arr2[k]-arr9[k]中有非数字字符吧?可以先用regex validate一下。
      

  3.   

    double.Parse("aa')里不能加引号arr2[k]-arr9[k]中有非数字字符“,”例如像“0,23” 其实应该为0.23
    我每个都用arr21[m]=double.Parse(arr5[m].Replace(",","."));转换以前也用类似方法做过,没有错误
    今天的不知道怎么了大家帮忙再看看吧