java分割文件合并流[58]
前言
SequenceInputStream表示其他输入流的逻辑串联,它从输入流的有序集合开始,并从第一个输入流开始读取,知道文件末尾,接着去读下一个,直到最后一个被读完.
一、代码演示
private static void HeBing(){
try {
//使用字节输入流指定合并的文件
InputStream is=new FileInputStream("D:/files/testF1.txt");
InputStream is2=new FileInputStream("D:/files/testF2.txt");
//集合工具类,内部使用数组实现
Vector<InputStream> v=new Vector<InputStream>();
v.add(is);
v.add(is2);
Enumeration<InputStream> es=v.elements();
//创建合并流对象
SequenceInputStream sis=new SequenceInputStream(es);
byte[] bytes=new byte[1024];
int len=-1;
//使用字节输出缓冲流写入一个文件里
BufferedOutputStream bop=new BufferedOutputStream(new FileOutputStream("D:/files/testF.txt"));
while ((len=sis.read(bytes))!=-1){
bop.write(bytes,0,len);
}
bop.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
二.小结
本章使用java实现了分割文件之后的合并流,学会这些,可以更深层次的体验压缩软件的功能;
有哪里不足或者有更好的建议,欢迎留言吐槽,有哪里不懂的小伙伴,可以私信我,我会一一答复,感谢认可,感谢支持!