asp.net上传图片到服务器路径的问题?

我用VS2003(VB)做了一个上传图片的功能,现在问题是,我在本地调试时候 uploadfile.PostedFile.SaveAs(Server.MapPath("../image/") & "XXX.jpg")这句中filepath解析后是:C:\inteput\wwwroot\image\XXX.jpg。我服务器根目录是/fqueen.我的所有文件放在这个根目录下边的。那我的上传语句该怎么写啊,我现在给路径搞晕了!
====================================================================
以下我上传部分代码:
Dim filename, filepath As String
If uploadfile.Value <> "" Then
filename = Path.GetFileName(uploadfile.value) '源图片文件名
filepath = Server.MapPath("../image/") & dl1.SelectedValue & "/" & filename '上传路径
uploadfile.PostedFile.SaveAs(filepath) ----->'这句代码出错了。
。。。。。。。。。。。。。。。。。。。。。。
====================================================================
希望有人能帮我解答这个问题,谢谢了!!!
================================================================
上边可能说得不很清楚我给个例子:
假如我的网站的根目录是: /fqueen
在它下边有个image文件夹(上传图片存放的位置),如图:
在web_eng里边有个上传页面upload.aspx.
现在想在点击上传页面upload.aspx,将图片上传到image文件夹里边去。代码应该怎么写呢?请指教!!!
如果我的上传页面upload.aspx在其他文件夹里边,那上传路径是不是也一样的呢??
=================================================================================

应该这样写:
filepath = Server.MapPath("~")&"/image/"& dl1.SelectedValue & "/" & filename '上传路径 ,这样即使是把网站放在虚拟目录下页没问题

你只要记住一点:Server.MapPath()方法是获取你服务器上你存放文件的物理地址,假如你把网站根目录指向d:\wwwroot\fqueen,那么就可以通过 Server.MapPath("~")的方法获得你的这个根目录。
当然也可以用HttpContext.Current.Request.MapPath()的方法,不过要注意路径。

补充:
======================================
即使你的upload.aspx在web_eng下(web_eng/upload.aspx),使用上面的方法也一样的,因为filepath = Server.MapPath("~")&"/image/" 就是指向你的服务器物理地址:d:\wwwroot\fqueen\images 的,所以无论你将upload.aspx文件放在什么目录下,上传文件的路径都是正确的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-02-28
string str = Path.GetFileNameWithoutExtension(FileUpload1.FileName);//获取当前文件名
path = HttpContext.Current.Request.MapPath("~/upFile/");//获取当前网站路径
FileUpload1.SaveAs(path + FileUpload1.FileName);//将文件保存到 我所建的网站的路径下。

++++++++++++++++++++++++++++
string path=HttpContext.Current.Request.MapPath("~/upFile/");//这个就是比如你那个bin文件夹。你的图片 image文件夹

你上传这样 saveas(path+"文件名");

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网