JAVA IO—合并流
一.SequenceInputStream
SequenceInputStream将两个或多个InputStream按顺序组合成一个InputStream。
1.合并两个InputStream
public static void main(String[] args) {
InputStream input1;
InputStream input2;
try {
input1 = new FileInputStream("d:/test1.txt");
input2 = new FileInputStream("d:/test2.txt");
SequenceInputStream sequenceInputStream = new SequenceInputStream(input1, input2);
int data = sequenceInputStream.read();
while (data != -1) {
System.out.print((char)data);
data = sequenceInputStream.read();
}
} catch (Exception e) {
e.printStackTrace();
}
}
1.合并多个InputStream
public static void main(String[] args) {
InputStream input1;
InputStream input2;
InputStream input3;
try {
input1 = new FileInputStream("d:/test1.txt");
input2 = new FileInputStream("d:/test2.txt");
input3 = new FileInputStream("d:/test3.txt");
Vector<InputStream> streams = new Vector<>();
streams.add(input1);
streams.add(input2);
streams.add(input3);
SequenceInputStream sequenceInputStream = new SequenceInputStream(streams.elements());
int data = sequenceInputStream.read();
while(data != -1){
System.out.print((char)data);
data = sequenceInputStream.read();
}
sequenceInputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}