c#File.Exists在不存在的文件上返回true

时间:2013-10-25 14:12:35

标签: c#

我正在尝试检测文件是否存在,我正在使用C#中的System.IO.File.Exists函数,因此,如果我执行File.Exists("file.txt");它返回TRUE,尽管该文件不存在! ! 这里发生了什么?

2 个答案:

答案 0 :(得分:5)

如果方法返回true,则文件确实存在。

但是,您可能不会查看与File.Exists命令相同的位置。

来自MSDN

  

允许path参数指定相对或绝对路径信息。相对路径信息被解释为相对于当前工作目录。

由于您没有指定文件的完整路径,因此使用当前工作目录来确定文件是否存在;它可能确实存在。

答案 1 :(得分:2)

当您仅使用fileName时,它将在执行它的同一本地中找到。您必须传递完整路径,例如:

if (File.Exists("C:\\temp\\file.txt"))
{
  // exists, use it
}
else
{
  // does not exists
}