日期:2014-05-17  浏览次数:20625 次

图片保存路径!
string subname = Session["username"] + DateTime.Now.ToString("yyyyMMddHHmmssff") + ImgName;
string Spth = "~/temp/" + subname;
 bmp.Save(Server.MapPath(Spth), System.Drawing.Imaging.ImageFormat.Jpeg);

这里的server.mapPath(Spth)测试时候会提示GDI+ 中发生一般性错误。
1、写绝对地址如“D://abc//123.jpg”可以存入;
2、写相对地址如“Server.MapPath("~/temp/123.jpg")”可以存入;
3、写相对地址如“Server.MapPath("123.jpg")”可以存入;

但是我的文件名是动态的,我想保存一个组合字符串路径如上面的Server.MapPath(Spth),想目录+自定义文件名,这个地址应该怎样写才能通过?

------解决方案--------------------
你这样写应该是可以的,估计问题出在你那那个subname的赋值上面,你可以先输出一下subname值是什么,看有没有什么异常
------解决方案--------------------
引用:
Quote: 引用:

看看你的Spth 是什么。

string Spth = "~//temp//" +subname;
string any = Server.MapPath(Spth);
我测试这个输出是D:\123\temp\Administrator201309271042122220121113034854734.jpg
映射路径没错啊,但是把他放到 bmp.Save(any,System.Drawing.Imaging.ImageFormat.Jpeg);就会GDI错误!实在是千年一遇啊!


kao,这么奇怪,除了文件名有点长,没什么特别的地方啊。