问题描述
我想做一个简单的检查,是否来自org.springframework.web.multipart.multipartfile7的multipartfile实际上是一个ZIP文件。有没有做很多转换的优雅方法吗?
一种解决方案是将multipartfile转换为java.io.File,然后使用它创建一个ZipFile对象,如果该文件不是实际的ZIP,则该对象的构造函数将引发ZipException。 我认为这不是一个好的解决方案,因为它需要大量的代码行,但是我无法提出更好的解决方案。 您还有其他想法吗?
解决方法
我建议使用Apache Commons IO中的File Name utils
String extension = FilenameUtils.getExtension(file.getOriginalFilename())
if(extension.equals(".zip"){
// enter logic here
}
Maven依赖项:
<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>