使用SequenceInputStream将FileInputStream,StringBufferInputStream,ByteArrayInputStream组合起来,将读到的数据打印到控制台。(java)
时间: 2023-08-25 07:11:11 浏览: 74
详解FileInputStream读取文件数据的两种方式
好的,以下是示例代码:
```java
import java.io.*;
public class SequenceInputStreamExample {
public static void main(String[] args) throws IOException {
// 创建需要组合的输入流
FileInputStream fis = new FileInputStream("file.txt");
StringBufferInputStream sbis = new StringBufferInputStream("Hello, world!");
ByteArrayInputStream bais = new ByteArrayInputStream(new byte[]{1, 2, 3});
// 使用SequenceInputStream组合输入流
SequenceInputStream sis = new SequenceInputStream(fis, new SequenceInputStream(sbis, bais));
// 读取并打印数据
int data;
while ((data = sis.read()) != -1) {
System.out.print((char) data);
}
// 关闭输入流
sis.close();
}
}
```
这里使用了`FileInputStream`、`StringBufferInputStream`和`ByteArrayInputStream`三个输入流,并使用`SequenceInputStream`将它们组合起来。然后,使用`while`循环读取数据并打印到控制台。最后,记得关闭输入流。
阅读全文