Java中的IO流中的合并流

合并流,就是将两个输入流合并成一个输入流,可以这么理解
代码例子:

	public class SequenceInputStreamDemo {
	public static void main(String[] args) throws IOException {
		//创建合并流管道
		SequenceInputStream sis = new SequenceInputStream(new FileInputStream("D:/java/文件1.txt"), new FileInputStream("D:/java/文件2.txt"));
		//创建输出流管道
		OutputStream out = new FileOutputStream("D:/java/文件3.txt");
		//声明byte数组用于存储从输入流读取到的数据
		byte[] by = new byte[1024];
		//该变量纪录每次读取到的字符个数
		int count = 0;
		//读取输入流中的数据
		while((count = sis.read(by))!=-1){
			//输出从输入流中读取到的数据
			out.write(by, 0, count);
		}
		//关闭合并流
		sis.close();
		//强制把输出流中的数据写入
		out.flush();
		//关闭输出流
		out.close();
	}
}

代码解析:
1、需要两个源文件,还有输出的目标文件。
2、合并流提供的构造函数SequenceInputStream(InputStream s1, InputStream s2)。
3、构造函数中的参数顺序将决定先读取哪个输入流。
4、读取合并流时,合并流会从第一个输入流开始读取,直到到达文件末尾,接着从第二个输入流读取,直到到达包含的最后一个输入流的文件末尾为止。
5、在读取过程输出到目标文件中。
6、关闭合并流和输出流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值