InputStream 转为文件
时间: 2023-06-01 15:04:48 浏览: 896
可以使用 FileOutputStream 将 InputStream 中的数据写入到文件中。具体的代码如下:
```java
public static void inputStreamToFile(InputStream inputStream, String filePath) throws IOException {
byte[] buffer = new byte[1024];
int length;
try (FileOutputStream outputStream = new FileOutputStream(filePath)) {
while ((length = inputStream.read(buffer)) > 0) {
outputStream.write(buffer, 0, length);
}
}
}
```
其中,inputStream 是输入流,filePath 是文件路径。在 try-with-resources 代码块中,使用 FileOutputStream 将数据写入到文件中。循环中,使用 read 方法读取数据,并且使用 write 方法将数据写入到文件中。最后,需要注意需要关闭 FileOutputStream,可以使用 try-with-resources 来自动关闭。
相关问题
InputStream转为FileInputStream
要将一个 InputStream 转换为 FileInputStream,你需要使用 FileInputStream 类的构造函数来创建一个新的 FileInputStream 对象。这个构造函数接受一个 File 对象作为参数。
下面是将 InputStream 转换为 FileInputStream 的示例代码:
```java
// 假设 inputStream 是你要转换的 InputStream 对象
FileInputStream fileInputStream = new FileInputStream(new File("path/to/file"));
// 现在你可以使用 fileInputStream 来读取文件数据了
```
在示例代码中,"path/to/file" 是你要读取的文件的路径。你可以将其替换为实际的文件路径。
inputstream转为fileinputstream
可以通过以下方式将 `InputStream` 转换为 `FileInputStream`:
```java
InputStream inputStream = ...;
File file = new File("path/to/file");
OutputStream outputStream = new FileOutputStream(file);
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.close();
inputStream.close();
FileInputStream fileInputStream = new FileInputStream(file);
```
上述代码将 `InputStream` 中的数据读取到一个临时文件中,并返回该文件的 `FileInputStream`。需要注意的是,在使用完毕后,记得关闭 `FileInputStream` 和删除临时文件,以避免资源泄露。
阅读全文