检测不正确的文件类型

时间:2012-05-20 11:02:39

标签: c# .net asp.net-mvc-3 file

我的应用程序允许用户上传jpeg / png文件。我必须检测更改扩展名的文件。例如:如果有人拿了example.txt文件并将他的名字改为example.jpg 所以用javascript检查这个文件是不够的,需要服务器解决方案。我怎么能这样做? 有人可以展示代码示例吗?感谢

2 个答案:

答案 0 :(得分:4)

您可以在文件开头使用魔术字节大部分时间执行此操作。请参阅此链接以获取不同文件类型的这些数字列表:http://www.astro.keele.ac.uk/oldusers/rno/Computing/File_magic.html

例如,JPEG文件以ff d8 ff e0开头,png文件以89 50 4e 47开头。

答案 1 :(得分:2)

格式不正确的文件,对于您的应用程序(考虑发布)是例外情况。因此,我会考虑简单的try/catch块,您尝试加载声明的格式的图像。如果异常发生(说)=>通知用户,该文件似乎格式不正确。