Asp.net检查文件是否存在失败

本文关键字:存在 失败 是否 文件 net 检查 Asp | 更新日期: 2023-09-27 18:16:03

我有一个项目,我想检查一个文件是否存在于一个目录。

if (File.Exists("''Galerija''" + Session["up_ime"] + "''" + Session["slika_profila"]))
{
  Label1.Text = "exist";
}
else {
  Label1.Text = "does not exist";
}

文件所在目录为'Galerija'admin'slika.jpg。文件在目录中,但我得到的结果是它不在。我还将我给File.Exists()的路径打印到标签上,它应该是正确的。我看不出有什么问题。

Asp.net检查文件是否存在失败

在你的评论中你提到这是一个网站。所以试试 Server.MapPath

if (File.Exists(Server.MapPath(string.Format("Galerija/{0}/{1}" ,Session["up_ime"] , Session["slika_profila"]))))
{
     Label1.Text = "exist";
}

您的相对路径应该不正确,请使用服务器。MapPath("到根文件夹的相对路径"),而不是直接相对路径,

在你的例子中,使用

if (File.Exists(Server.MapPath("''Galerija''" + Session["up_ime"] + "''" + Session["slika_profila"])))
        {
            Label1.Text = "exist";
        }
        else
        {
            Label1.Text = "does not exist";
        }

你可以在这里找到更多信息,

http://msdn.microsoft.com/en-us/library/system.web.httpserverutility.mappath.aspx

如果您仍然无法找出问题所在,您应该使用procmon.exe找出正在查找的文件路径。如果有错误,它也会显示给您。Procmon输出了大量的信息,但是过滤器功能可以在这里帮助您。

在这里下载- http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx