FileUtils.writeByteArrayToFile
时间: 2023-12-13 15:06:15 浏览: 29
FileUtils.writeByteArrayToFile是一个用于将字节数组写入文件的方法。它接受一个File对象和一个字节数组作为参数,并将字节数组的内容写入到指定的文件中。
相关问题:
1. FileUtils.writeByteArrayToFile方法还有哪些重载形式?
2. 如何使用FileUtils
相关问题
MultipartFile保存上传的图片到本地
MultipartFile是Spring架中用于处理文件上传的类。要将上传图片保存到本地可以使用MultipartFile的getBytes()方法获取文件的字节数组,然后使用FileUtils.writeByteArrayToFile()方法将字节数组写入到目标文件中。
以下是一个示例代码,演示了如何使用MultipartFile保存上传的图片到本地文件夹:
```java
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FilenameUtils;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.util.UUID;
public void saveFileByDirectory(MultipartFile file) {
try {
// 生成文件名
String uuid = UUID.randomUUID().toString();
String originalName = file.getOriginalFilename();
String ext = "." + FilenameUtils.getExtension(originalName);
String fileName = uuid + ext;
// 创建目标文件
File targetFile = new File("D:\\sim-file\\", fileName);
// 将文件写入目标文件
FileUtils.writeByteArrayToFile(targetFile, file.getBytes());
} catch (IOException e) {
logger.error("保存文件到服务器(本地)失败", e);
}
}
```
请注意,上述代码中的"D:\\sim-file\\"是保存文件的目标文件夹路径,你可以根据实际情况修改为你想要保存文件的目录。
java实现 fileBase64字符串转MultipartFile
以下是Java实现将fileBase64字符串转换为MultipartFile的方法:
```java
import org.springframework.web.multipart.MultipartFile;
import org.springframework.util.Base64Utils;
public MultipartFile fileBase64ToMultipartFile(String fileBase64, String fileName) {
// 将base64字符串转换为字节数组
byte[] bytes = Base64Utils.decodeFromString(fileBase64);
// 创建临时文件
File tempFile = null;
try {
tempFile = File.createTempFile(fileName, null);
// 将字节数组写入临时文件
FileUtils.writeByteArrayToFile(tempFile, bytes);
} catch (IOException e) {
e.printStackTrace();
}
// 将临时文件转换为MultipartFile
return new MockMultipartFile(fileName, tempFile.getName(), null, FileUtils.readFileToByteArray(tempFile));
}
```
请注意,上述代码使用了Spring框架中的`Base64Utils`和`MockMultipartFile`类。如果你没有使用Spring框架,可以使用其他方式实现相同的功能。
阅读全文