在C#中捕获错误时退出程序?

时间:2011-02-11 17:28:44

标签: c# exception exit

使用Python,我通常会检查返回值。并且,如果出现错误,我会将sys.exit()与错误消息一起使用。

C#中的等效动作是什么?

  • Q1:如何向stderr流打印错误消息?
  • Q2:如何在C#中调用system.exit()函数?
  • 问题3:通常,C#程序员如何处理错误?提高和捕捉异常?或者,只需获取返回值并退出()?

2 个答案:

答案 0 :(得分:6)

Q1:在C#中,您必须使用System.Console.xxx才能访问输入,输出和错误的流:System.Console.Error是您可以写入的标准错误。

http://msdn.microsoft.com/en-us/library/system.console.aspx

Q2:您退出:

System.Environment.Exit( exitCode );

http://msdn.microsoft.com/en-us/library/system.environment.exit.aspx

问题3:是的,C#程序员引发(抛出)异常(从Exception类派生的类的对象),并在高级调用者中捕获它们。

如果你想在整个程序中捕获错误,你只需将整个main()过程封装在try ... catch:

class App {
    public static void Main(String[] args)
    {
        try {
            <your code here>
        } catch(Exception exc) {
            <exception handling here>
        }
        finally {
            <clean up, when needed, here>
        }
    }
}

希望这有帮助。

答案 1 :(得分:3)

通常情况下,您根本无法捕获无法处理的异常。 .NET会为你处理你的进程。