上传文件限制文件类型的方法讨论.
我们知道,一般做上传文件的时候,我们通过读后缀名的方法,可以判断指定的文件.
可是,这样的判断,可以通过修改后缀名的方法来轻松饶开.
所以很多人就用提取二进制文件头的方法来精确判断文件类型.
因为在WINDOWS里,文件的前4个比特(byte而不是bit)来存储文件类型.比如说
.xls:870;.doc:87111
那么我们可以通过下面
int count = 4;
FileStream fs;
byte[] buffer = new byte[count];
fs = new FileStream(@ "文件路径 ",FileMode.Open);
fs.Read(buffer, 0, count);
这样就读出了前4个比特,然后对比后就可精确判断文件类型.
不过问题出现了.这么说我们是不是还是得将文件从客户端上传到服务端后,
再读文件头判断类型,如果不是需求类型再删除?
能不能直接在客户端判断?
------解决方案--------------------不懂,也想知道,做個記號
------解决方案--------------------http://blog.csdn.net/vipxiaotian/archive/2007/09/18/1789686.aspx