虚拟服务器上的图片上传问题
图片上传,本地测试没有问题,
Image img = Image.FromFile(photoOriginalName, true);
监视:photoOriginalName = "C:\Documents and Settings\judyjiao\桌面\Supplement.gif "
可是上传到服务器上,Image img = Image.FromFile(photoOriginalName, true);
就出了问题。请问是什么问题呢?应该不是权限问题吧,这里是上穿图片。
全部代码如下:
public static bool UploadPhoto(HtmlInputFile file, string photoName)
{
bool retValue = false;
string photoOriginalName = file.PostedFile.FileName;
Image img = Image.FromFile(photoOriginalName, true);
try
{
switch (SpecailTopicPhotoType.Trim().ToUpper())
{
case "BMP ":
img.Save(PhotoNewPath + photoName + @ ".bmp ", ImageFormat.Bmp);
break;
case "JPG ":
img.Save(PhotoNewPath + photoName + @ ".jpg ", ImageFormat.Jpeg);
break;
case "GIF ":
img.Save(PhotoNewPath + photoName + @ ".gif ", ImageFormat.Gif);
break;
case "TIF ":
img.Save(PhotoNewPath + photoName + @ ".tif ", ImageFormat.Tiff);
break;
}
file.PostedFile.SaveAs(PhotoOriginalPath + file.PostedFile.FileName.Remove(0, file.PostedFile.FileName.LastIndexOf(@ "\ ") + 1));
retValue = true;
}
谢谢,顺便说一下,虚拟服务器是蓝芒的虚拟服务器?
[解决办法]
这个路径是客户端的路径.应该先把它存到服务器上,然后再FromFile,或者不存用FromStream
[解决办法]
你这样做肯定是错的啊
上传的地址 怎么能指向你本地的路径 load呢
应该是 获取post到 服务器端的数据
给你个例子
string fileName = string.Empty;
if (fileADPic.PostedFile.ContentLength > 0)
{
//--大小判断?
fileName = fileADPic.PostedFile.FileName;
string exName = fileName.Substring(fileName.LastIndexOf( '. ')).ToLower();
if (exName != ".jpg " && exName != ".jpeg " && exName != ".gif ")
{
//CommonFun.WriteAlert( "只能上传jpg、jpeg、gif格式的图像文件! ");
this.Page.RegisterClientScriptBlock( "Err ", " <script> alert( '只能上传jpg、jpeg、gif格式的图像文件! '); </script> ");
return;
}
else
{
fileName = DateTime.Now.ToString( "yyyyMMddHHmmss ") + exName;
fileADPic.PostedFile.SaveAs(Server.MapPath(Application[ "appPath "] + "/upimages/ ") + fileName);
fileName = "upimages/ " + fileName;
}
}
//还有 记得将上传 目录的 everyone给写入的权限