读书人

.net 下传文件验证扩展名.(希望高人指

发布时间: 2012-09-13 09:51:53 作者: rapoo

.net 上传文件验证扩展名.(希望高人指点)
想请教一个问题,用.net上传控件上传,文件的时候怎样限制上传文件的扩展名?
我用这个方法获取文件扩展名,
string fileExtension = Path.GetExtension(fpImg.FileName).ToLower();
string[] allowExtension = { ".gif", ".png", ".jepg", ".jpg", ".bmp" };
但是如果把一个exe文件的扩展名改成.jpg,也能上传。
怎么样限制即使改过扩展名之后也能检测出来?
如果用判断文件头的方法本地测试没问题,但传到服务器上就出错,提示找不到文件,也就是不能远程读取。
望高手指点。小弟的这个bug本月已给公司贡献了五十了。

[解决办法]
//是否合法的文件类型,通过FileUpload的ContentType属性来确定类型
string fileType = fu.PostedFile.ContentType.ToString().ToLower();
if (fileType == "image/pjpeg" || fileType == "image/x-png" || fileType == "image/gif"||fileType=="jpg")
return true;
return false;

用这个就可以。。

读书人网 >asp.net

热点推荐