asp.net上传文件时提示,不支持给定路径的格式解决方法

asp.net的上传图片,在部分浏览器中,提示”不支持给定路径的格式” 。该问题是由于浏览器的有些设置会把图片的本地完整路径发送到服务器端,而服务器端在写代码的时候,却是按单独的文件名来处理的,所以就导致错误。解决方法:

1. 工具->Internet选项->Internet->自定义级别->将文件上载到服务器时包含本地目录路径 调成禁用。临时解决…

2. 最好的方法是改上传代码这里

HttpPostedFile uploadFile = this.Page.Request.Files[i];

name = System.IO.Path.GetFileName(uploadFile.FileName);

如果启用包含本地目录时,则上传中FileName为本地图片绝对路径,比如e:\test\my.jpg,而如果不包含本地目录路径的话,就只是一个文件名my.jpg。

主要是uploadFile.SaveAs时,如果FileName直接取过来的话,肯定会导致出错的。

其它语言的上传类似,检查上传上去的文件名是不是绝对路径即可。建议对上传的文件名进行处理,提取出文件名,去掉路径。

或者:

Server.MapPath("~/xxxx/xx.xx")这样用