我们通常在IE上测试我们上传文件(图片等)的情况,在FF上做.net 的测试可能相对来说少一些,
比如这个上传文件的 <input type='file' ID='upIMG' /> (*^_^*);
在IE上这个upIMG.PostedFile.FileName是绝对路径的 (eg: c:\sfsls\img.gif);
但在FF上却只是个文件名 (img.gif);
那我们上传文件过程中,可能要做很多问题,比较检测文件是否合法,格式是否正确的问题。
所以,如果按IE上的检测方法,可能会跳出异常错误.
其实,FF上只要检测长度,还有后缀的问题,其他的什么是否有‘\’反斜杠就不必了.
--------------------------
再来说一下上传的问题 (upIMG.PostedFile.SaveAs)
在FF这边,就要先写要上传到的地方,比如(upload/)
但是如果是:upIMG.PostedFile.SaveAs('upload/' + fileName);这里会被看写是 本地 c:\的某个地方
所以会上传出错。 所以正确的写法为:
upIMG.PostedFile.SaveAs(Server.MapPath('upload/') + fileName);
----------------------------------------------
string fileName = upIMG.PostedFile.FileName;
if (Context.Request.Browser.Type.ToLower() == "ie")
{
//判断IE的情况
fileName = fileName.Substring(fileName.LastIndexOf('\\')+1);
}