java inputstream转成File对象,只有inputstream一个参数,需要返回file对象
时间: 2024-03-05 14:50:33 浏览: 42
可以使用Java标准库中的`File.createTempFile()`方法,将`InputStream`对象写入一个临时文件中,然后返回这个文件的`File`对象。具体实现如下:
```java
import java.io.*;
public class InputStreamToFile {
public static File inputStreamToFile(InputStream inputStream) throws IOException {
File tempFile = File.createTempFile("temp", ".tmp");
FileOutputStream outputStream = new FileOutputStream(tempFile);
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.close();
return tempFile;
}
}
```
你可以使用这个方法将`InputStream`对象转换成`File`对象,示例代码如下:
```java
InputStream inputStream = new FileInputStream("example.txt");
File file = InputStreamToFile.inputStreamToFile(inputStream);
```
这段代码会将当前目录下的`example.txt`文件转换成`File`对象`file`。
阅读全文