java根据byte数组获取文件后缀名
时间: 2024-01-27 19:02:45 浏览: 287
可以通过以下方式获取byte数组对应文件的后缀名:
1. 首先需要根据byte数组创建一个临时文件
```java
byte[] bytes = ...; // 文件的byte数组
File tempFile = File.createTempFile("temp", ".tmp"); // 创建临时文件
FileOutputStream fos = new FileOutputStream(tempFile);
fos.write(bytes); // 将byte数组写入临时文件
fos.close();
```
2. 使用Java自带的Mime类型判断获取文件后缀名
```java
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
String mimeType = Files.probeContentType(Path.of(tempFile.getPath())); // 获取Mime类型
String extension = null;
if (mimeType != null) {
extension = MimeTypeUtils.getExtension(mimeType); // 使用Spring的Mime类型工具类获取文件后缀名
}
```
注意,需要引入Spring的Mime类型工具类`org.springframework.util.MimeTypeUtils`,可以通过在`build.gradle`文件中添加以下依赖实现:
```
implementation 'org.springframework:spring-web:5.3.9'
```
阅读全文