java InputStream 的用法
时间: 2023-06-03 12:05:08 浏览: 82
Java InputStream 是一个抽象类,用于表示输入字节流。它是所有输入流的父类,定义了读取字节的基本方法。可以使用 InputStream 类的子类来从不同类型的源读取数据,如文件、网络套接字等。一旦创建了 InputStream 对象,就可以使用它来读取数据。常用的方法有 read()、read(byte[] b)、skip()、available() 等。
相关问题
java inputstream
Java的InputStream是所有输入流的基础类,它是字节输入流的抽象基类。当你需要从数据源读取字节时,通常会使用InputStream。`BufferedInputStream`是其一个派生类,它增加了缓冲机制来提高读取性能。
在Java中,使用`BufferedInputStream`读取文件的基本步骤如下[^1]:
```java
try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream("input.txt"))) {
int data;
while ((data = bis.read()) != -1) { // 读取字节直到到达文件末尾或遇到EOF标志
// 这里你可以对每个字节进行处理
}
} catch (IOException e) {
e.printStackTrace();
}
```
在这个示例中,`FileInputStream`负责打开并读取文件,`BufferedInputStream`则提供了缓冲区来减少频繁的磁盘IO操作。当`read()`方法返回-1时,表示已达到文件末尾。
java InputStream 转 file
以下是两种Java实现将InputStream转换为File的方法:
1. 使用Java IO流的方式:
```java
InputStream inputStream = new FileInputStream(new File(inputTxtFile));
byte[] inputBytes = new byte[inputStream.available()];
inputStream.read(inputBytes);
File outputFile = new File("output.pdf");
OutputStream outputStream = new FileOutputStream(outputFile);
outputStream.write(inputBytes);
inputStream.close();
outputStream.close();
```
2. 使用Guava库的方式:
```java
InputStream initialStream = new FileInputStream(new File("sample.txt"));
byte[] buffer = new byte[initialStream.available()];
initialStream.read(buffer);
File targetFile = new File("targetFile.tmp");
Files.write(buffer, targetFile);
initialStream.close();
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)