如何在C#中捕获异常处理

时间:2020-03-31 03:06:29

标签: c#

两天前我才开始学习C#。当我键入字符串而不是字符时,以下代码不会捕获异常。

我也收到在if语句中使用未分配的局部变量char1的错误消息

char char1;

try
{
    char1 = Convert.ToChar(Console.ReadLine());
}
catch (ArgumentException e)
{
    Console.WriteLine("{0}: {1}", e.GetType().Name, e.Message);
}

if (char1 == '1')
{
    sMessage = "You enter 1 Hoorray";
}

1 个答案:

答案 0 :(得分:1)

要捕获所有异常,请使用:

   char char1;

        try
        {
            char1 = Convert.ToChar(Console.ReadLine());
        }
        catch (Exception e)
        {
            Console.WriteLine("{0}: {1}", e.GetType().Name, e.Message);
        }

您还可以选择捕获不同的异常并以不同的方式处理它们:

   char char1;

        try
        {
            char1 = Convert.ToChar(Console.ReadLine());
        }
        catch (FormatException e)
        {
            Console.WriteLine("The format is wrong.."+ e.ToString());
        }
        catch (Exception e)
        {
            Console.WriteLine("Some sort of exception occurred..{0}: {1}", e.GetType().Name, e.Message);
        }