我想将图片文件上传到项目的文件夹但是我的catch中有错误: 找不到路径'C:\ project \ uploads \ logotipos \ 11111 \'的一部分。
我做错了什么?我希望将我的客户端上传的图像保存在该文件夹中...该文件夹存在...啊,如果我为folder_exists3设置断点,显示真实值!
我的代码是:
try
{
var fileName = dados.cod_cliente;
bool folder_exists = Directory.Exists(Server.MapPath("~/uploads"));
if(!folder_exists)
Directory.CreateDirectory(Server.MapPath("~/uploads"));
bool folder_exists2 = Directory.Exists(Server.MapPath("~/uploads/logo"));
if(!folder_exists2)
Directory.CreateDirectory(Server.MapPath("~/uploads/logo"));
bool folder_exists3 = Directory.Exists(Server.MapPath("~/uploads/logo/" + fileName));
if(!folder_exists3)
Directory.CreateDirectory(Server.MapPath("~/uploads/logo/"+fileName));
file.SaveAs(Server.MapPath("~/uploads/logo/" + fileName+"/"));
}
catch(Exception e)
{
}
有人知道我做错了吗?
谢谢:)
答案 0 :(得分:21)
试试这个:
string targetFolder = HttpContext.Current.Server.MapPath("~/uploads/logo");
string targetPath = Path.Combine(targetFolder, yourFileName);
file.SaveAs(targetPath);
答案 1 :(得分:1)
你需要文件名
file.SaveAs(Server.MapPath("~/uploads/logo/" + fileName+"/" + your_image_fillename));
答案 2 :(得分:0)
您的错误如下:
bool folder_exists3 = Directory.Exists(Server.MapPath("~/uploads/logo/" + fileName));
if(!folder_exists3)
Directory.CreateDirectory(Server.MapPath("~/uploads/logo/"+fileName));
检查目录是否存在,但是应该检查文件是否存在:
File.Exists(....);
答案 3 :(得分:0)
删除路径的最后一部分以节省您额外的“/”
应该是
file.SaveAs(Server.MapPath("~/uploads/logo/" + fileName);
此外,您没有设置文件扩展名。