Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我想对十进制值求和 int和=0; 对于(int i=0;i_C# - Fatal编程技术网

C# 我想对十进制值求和 int和=0; 对于(int i=0;i

C# 我想对十进制值求和 int和=0; 对于(int i=0;i,c#,C#,我还尝试了sum+=int.Parse(dataGridView1.Rows[i].Cells[3].Value.ToString()) 但仍然显示出错误。 我甚至试过用double,但仍然有错误 请帮助最可能的问题是您试图解析标题中的十进制数,但您使用的是int.parse函数。如果给int.Parse一个“5.25”值,并显示与您得到的错误消息完全相同的错误消息:“输入字符串格式不正确”,则解析将失败 您可以尝试使用decimal.parse方法解析数字 int sum=0; for ( i

我还尝试了
sum+=int.Parse(dataGridView1.Rows[i].Cells[3].Value.ToString())
但仍然显示出错误。
我甚至试过用double,但仍然有错误


请帮助

最可能的问题是您试图解析标题中的十进制数,但您使用的是int.parse函数。如果给int.Parse一个“5.25”值,并显示与您得到的错误消息完全相同的错误消息:“输入字符串格式不正确”,则解析将失败

您可以尝试使用decimal.parse方法解析数字

int sum=0;
for ( int i=0; i < dataGridView1.Rows.Count; ++i)
{
   sum += int.Parse(dataGridView1.Rows[i].Cells[3].Value.ToString());
}
total.Text = sum.ToString();Value) 
//showing error Input string was not in a correct format.
int和=0;
对于(int i=0;i
或者将整数和一起更改为十进制类型

int sum=0;
for ( int i=0; i < dataGridView1.Rows.Count; ++i)
{
    //this decimal cast to integer will ignore any numbers after the decimal point. 
    //e.g.: 0.6 will add 0 (absolutely nothing) to the sum variable. 
    //I would recommend using the other solution below.
    sum += (int)decimal.Parse(dataGridView1.Rows[i].Cells[3].Value.ToString(), System.Globalization.NumberStyles.Any);
}
total.Text = sum.ToString();
十进制和=0m;
对于(int i=0;i
您是否尝试过decimal.Parse(dataGridView1.Rows[i].Cells[3].Value.ToString()、NumberStyles.Any)?能否创建一个包含dataGridView1.Rows[i].Cells[3].Value.ToString()值的字符串,放置一个断点并在调试器中运行它。之后,用返回的内容更新问题。为什么需要转换为字符串,然后再解析回整数?请尝试以下两种解决方案之一:1)sum+=dataGridView1.行[i]。单元格[3]。值;2) sum+=int.Parse(dataGridView1.Rows[i].Cells[3].Value)<代码>输入字符串格式不正确
此错误表示程序无法识别您试图解析的字符串为数值。请确保它不包含非数字字符,如字母或空格。如果您尝试对十进制值求和,为什么要使用int.Parse?我尝试了代码,但显示的对象引用未设置为对象的实例。哦,是的,对不起,让我修复十进制和=0;对于(int i=0;idecimal sum = 0m; for ( int i=0; i < dataGridView1.Rows.Count; ++i) { sum += decimal.Parse(dataGridView1.Rows[i].Cells[3].Value.ToString(), System.Globalization.NumberStyles.Any); } total.Text = sum.ToString();