我有一个项目,我想检查目录中是否存在文件。
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()
的路径打印到标签上,它应该是正确的。
我不明白这是什么问题。 - 应找到该文件。
答案 0 :(得分:6)
在您的评论中,您提到这是网站。请尝试使用Server.MapPath
if (File.Exists(Server.MapPath(string.Format("Galerija/{0}/{1}" ,Session["up_ime"] , Session["slika_profila"]))))
{
Label1.Text = "exist";
}
答案 1 :(得分:1)
您的相对路径应该不正确,使用Server.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
答案 2 :(得分:0)
如果您仍然无法弄清楚出了什么问题,您应该使用procmon.exe找出该文件被查找的路径。如果有错误,它也会显示错误。 procmon输出了很多信息,但过滤器功能可以帮助你。
在此处下载 - http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx