序列流(集合流) * 把n个流合并在一起读取

来源:互联网 发布:oracle数据库cache 编辑:程序博客网 时间:2024/06/13 05:45
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.SequenceInputStream;/** * 序列流(集合流) * 把n个流合并在一起读取 * @author jiaxutianhuo * */public class E {public static void main(String[] args) {// TODO Auto-generated method stubtry {//第一个文件流FileInputStream fis1=new FileInputStream("F:/iotest/ddt2.txt");//第二个文件流FileInputStream fis2=new FileInputStream("F:/iotest/ddt3.txt");//合并到序列流中。SequenceInputStream sis=new SequenceInputStream(fis1, fis2);byte[] b=new byte[1024];int off=0;int length=fis1.available()+fis2.available();int i;//一次性读取。由于读取一个文件流之后,会暂停,所以要写while循环。while ((i=sis.read(b,off,length))!=-1) {off+=i;System.out.println(off);}System.out.println(new String(b));sis.close();} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.SequenceInputStream;/** * 序列流(集合流) * 把n个流合并在一起读取 * @author Administrator * */public class Ch07 {public static void main(String[] args) {try {//第一个文件流FileInputStream fis1=new FileInputStream("F:/iotest/ddt2.txt");//第二个文件流FileInputStream fis2=new FileInputStream("F:/iotest/ddt3.txt");//合并到序列流中SequenceInputStream sis=new SequenceInputStream(fis1, fis2);//方式1////临时存放数据的数组//int len =fis1.available()+fis2.available();//byte[] b=new byte[2*len+1];////把每一次读取到的临时数据存放如sb中////StringBuffer sb=new StringBuffer();////一次性读取所有的内容//int off=0;//int i=0;//while((i=sis.read(b,off,len))!=-1) { ////sb.append();//off+=i;//}//System.out.println(new String(b));//方式2byte[] b=new byte[2];//StringBuffer sb=new StringBuffer();//int i=0;while(sis.read(b)!=-1) {System.out.print(new String(b));//sb.append(new String(b));}//System.out.println(sb.toString());sis.close();} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

阅读全文
0 0
原创粉丝点击