java读取文件时,判断文件类型与后缀是否一致

java读取文件时,判断文件类型与后缀是否一致,若是人文手动修改文件后缀,将excel改成doc,那这时候校验出来的结果应该是文件格式与后缀不一致这个结果。(不使用只判断后缀名的方式)

基本上所有文件都有文件头的,就是二进制形式下的头几个字节会标记本文件的类型。
你要作判断,最好是先确定了好类型,根据头几个字节有针对性的进行判断。

如果是要判断所有类型,会有些累。因为还有很多自定义的文件类型,不同的软件自己使用的,并不大众。

http://blog.csdn.net/forget_over/article/details/51932711

可以参考这份代码

使用正则表达式,这是判断后缀是不是.xls的 filePath.matches("^.+\.(?i)(xls)$"); 可以作为参考!

文件有一个属性去后缀, 你就把两个文件的后缀名一去 比较一下就完事了