我如何处理输入字符串的格式不正确

How do I handle input string was not in correct format

我正在尝试处理异常,但我对如何处理感到困惑。这是我的代码

modules.Add(new Modules() { 
name = namebox.Text, 
code = codebox.Text, 
credits = Convert.ToInt32(creditbox.Text), 
hours = Convert.ToInt32(hoursbox.Text),
date = semesterbox.Text, 
weeks = Convert.ToInt32(semesterweekbox.Text), 
studyhours = m1.Calculations(Convert.ToInt32(hoursbox.Text), Convert.ToInt32(semesterweekbox.Text), Convert.ToInt32(creditbox.Text))
});

我正在尝试处理此异常,因此如果我未在文本框中输入值,它会结束我的代码。根据我所做的研究,我发现 ToInt32 行可能是问题所在。一些程序员建议我使用 tryparse 函数。我将如何使用该函数来处理此错误?

A System.FormatException 当您想将字符串“解析”为另一种类型(如整数)时,会发生这种情况,这会使文本中的数字表示为实数,在您的情况下,您正在调用 Convert.ToInt32,确保作为参数传递给此方法的任何字符串都不会溢出 Int32 结构的功能,或者文本不包含字母或小数点。如果是这种情况,要验证数字是否有效,请使用 int.TryParse,只有当文本格式正确时才会 return 为真,如下所示:

if (int.TryParse("5", out int number))
{
    // Do something with that number
}

此处,如果“5”不是数字,则完全跳过 if 块。