[英]FormatException was unhandled in C#
我正在独自学习C#,并且试图创建一个用于学习一些控件的简单项目。 而且我像在编写书一样对项目进行编码,但出现错误。 有人可以帮我吗? 谢谢...
错误:mscorlib.dll中发生了'System.FormatException'类型的未处理异常。其他信息:输入字符串的格式不正确。
我的代码:
private void button1_Click(object sender, EventArgs e)
{
int sum = 0;
float average = 0;
sum += Convert.ToInt32(textBox1.Text);
sum += Convert.ToInt32(textBox2.Text);
sum += Convert.ToInt32(textBox3.Text);
average = (float)sum / 3;
textBox4.Text = average.ToString();
}
这可能是由于将值放置在TextBoxes中。
正如伊恩(Ian)在评论中所说,调试TextBox.Text,您可能会找到罪魁祸首。
有关更多信息,这对于您检查上一个问题可能非常有用。
该问题的答案之一是使用TryParse()
的想法:
int a = 0;
if (!int.TryParse(TextBox.Text, out a))
{
// Couldn't parse input to an integer, show a message perhaps?
}
参见下面的代码:
private void button1_Click(object sender, EventArgs e)
{
try
{
int sum = 0;
float average = 0;
sum += Convert.ToInt32(textBox1.Text);
sum += Convert.ToInt32(textBox2.Text);
sum += Convert.ToInt32(textBox3.Text);
average = (float)sum / 3;
textBox4.Text = average.ToString();
}
catch(FormatException exc)
{
textBox4.Text = "ERROR";
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.