C# GetFileInfo导致第一次机会异常

C# GetFileInfo导致第一次机会异常,c#,C#,我有一个try/catch块,其中我使用GetFileInfo获取特定文件的大小。我在调试器的输出窗口中看到了一个异常(尽管程序仍在继续运行,但没有对异常做出任何反应) 我收到的错误消息是: mscorlib.dll中发生类型为“System.ArgumentException”的第一次意外异常 我的问题有两个: 为什么会发生错误/我可以做些什么来避免它 为什么尽管有try/catch,异常仍会显示在输出中?这是因为外部dll抛出它吗 代码: 上述代码位于调用的方法中,文件路径为c:\test\

我有一个try/catch块,其中我使用GetFileInfo获取特定文件的大小。我在调试器的输出窗口中看到了一个异常(尽管程序仍在继续运行,但没有对异常做出任何反应)

我收到的错误消息是:

mscorlib.dll中发生类型为“System.ArgumentException”的第一次意外异常

我的问题有两个:

  • 为什么会发生错误/我可以做些什么来避免它
  • 为什么尽管有try/catch,异常仍会显示在输出中?这是因为外部dll抛出它吗
  • 代码:

    上述代码位于调用的方法中,文件路径为
    c:\test\test.txt
    ,文件存在于该位置

  • 闻起来很像你忘了逃离你的路径中的
    \
    s;-)
  • 由于在程序中看到异常总是很有趣的,这确实是调试器输出窗口的完美常规行为

  • 在VS中,您可以选择调试->异常,并在引发特定类型的异常时关闭自动中断。

    1。请显示设置文件路径的代码。。。闻起来好像你忘了逃离“\”s;)2.这是调试器输出窗口的完美表现。。。您可能总是对发生的异常感兴趣,不管您是否捕捉到它们,对吗?想将其作为答案发布吗?(确切地说:)tnx)。如果出现错误,唯一的问题是第二个问题,因为它来自一个抛出错误的外部dll。在发生错误之前,我必须承认我没有注意到这种行为。
    try
    {
        FileInfo fileInfo = new FileInfo(filePath);
        return fileInfo.Length;
    }
    catch
    {
    }
    return 0;