判断文件格式
在某些时候,我们需要判断文件是什么类型;而通过文件后缀(扩展名)并不能满足需求,因为扩展名可随意修改,试想一下对方给你发送了一个伪造扩展名的图片文件,实际上却是个木马病毒,又或者恶意攻击者上传了一个木马病毒到你的服务器,而你的程序却认为它是张图片;
况且在Linux环境下,没有扩展名这一说;扩展名只是一种用于方便辨认文件类型的方法,虽然它有时候不可信。
何如判断扩展名类型
- 在可信任的情况下,可通过文件后缀(扩展名)来判断:如 .txt 是一个文本文件;此方法可作为判断文件类型的辅助条件;
- 通过文件的文件头标志来判断;
绝大多数文件都包含头信息,比如 RAR 压缩文件的文件头(使用十六进制编辑器查看):52 61 72 71
;JPEG文件的文件头:FF D8 FF
。