项目中需要上传图片的功能,只判断文件后缀则修改文件后缀为图片格式的非图片文件也能通过验证,下面的代码能判断文件头是否为图片,如果返回null则非图片文件。
1 | public static void main(String[] args) { |
这段代码还是不能满足要求,因为必须传入File为参数,但是struts上传FormFile无法直接获取本地File的路径,会报空指针异常。
又查了些资料,下面的代码能判断上传的FormFile是否后缀为图片格式,但是经过我测试修改其他文件的后缀为图片格式是无法判断的:
1 | public boolean isImage(FormFile formFile) { |
综合了大家的意见其实没必要在服务器端进行如此麻烦的操作,必须用io流检查文件头才能验明真身。
v1.5.2