Java InputStream 转 File:无需创建 File 对象
要将 InputStream 转换为 File 对象,可以使用 Apache Commons IO 库中的 IOUtils 类中的 toFile 方法。这个方法会将 InputStream 的所有内容写入到一个临时文件中,并返回该临时文件的 File 对象。
首先,确保你的项目中已经引入了 Apache Commons IO 库。然后,使用下面的代码将 InputStream 转换为 File 对象:
import org.apache.commons.io.IOUtils;
public File convertInputStreamToFile(InputStream inputStream) throws IOException {
File tempFile = File.createTempFile('temp', '.tmp');
tempFile.deleteOnExit();
FileOutputStream out = new FileOutputStream(tempFile);
IOUtils.copy(inputStream, out);
return tempFile;
}
使用示例代码:
InputStream inputStream = ...; // 从某个地方获取输入流
try {
File file = convertInputStreamToFile(inputStream);
// 使用转换后的 File 对象进行操作
} catch (IOException e) {
// 处理异常
}
这样,你就可以将 InputStream 转换为 File 对象,而不需要显式地创建 'new File(filePath)'。
原文地址: https://www.cveoy.top/t/topic/qnjv 著作权归作者所有。请勿转载和采集!