使用SequenceInputStream将FileInputStream,StringBufferInputStream,ByteArrayInputStream组合起来,将读到的数据打印到控制台。
时间: 2023-08-25 15:24:43 浏览: 50
好的,以下是代码实现:
```java
import java.io.*;
public class SequenceInputStreamExample {
public static void main(String[] args) {
try {
FileInputStream fis1 = new FileInputStream("file1.txt");
StringBufferInputStream sbis = new StringBufferInputStream("Hello World");
byte[] byteArray = { 1, 2, 3, 4, 5 };
ByteArrayInputStream bais = new ByteArrayInputStream(byteArray);
SequenceInputStream sequenceInputStream =
new SequenceInputStream(fis1, new SequenceInputStream(sbis, bais));
int data;
while ((data = sequenceInputStream.read()) != -1) {
System.out.print((char) data);
}
sequenceInputStream.close();
fis1.close();
sbis.close();
bais.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这里将文件输入流、字符串输入流和字节数组输入流组合成了一个序列流 `sequenceInputStream`,然后通过 `read()` 方法读取数据,最后将读到的数据打印到控制台上。
阅读全文