码迷,mamicode.com
首页 > 其他好文 > 详细

021.11 IO流 序列流

时间:2018-05-22 15:01:48      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:++   通过   enc   函数   tst   构造   方法   问题:   color   

 

序列流:SequenceInputStream
特点:流对象有序排列
解决问题:将多个输入流合并成一个输入流,将多个源合并成一个源,对于多个源的操作会变简单。

构造函数参数就是输入流,一初始化就合并了多个流。

public static void main(String[] args) throws IOException
{
    //获取枚举,Vector有,但是效率低,使用ArrayList
    ArrayList<FileInputStream> al = new ArrayList<FileInputStream>();
    for(int x = 1; x<=3 ; x++){
        al.add(new FileInputStream("myfile\\"+x+".txt"));
    }
    //通过ArrayList获取枚举,可以使用Collections工具类的方法
    Enumeration<FileInputStream> en = Collections.enumeration(al);
    
    //创建序列流对象,需要传递Enumeration
    SequenceInputStream sis = new SequenceInputStream(en);
    FileOutputStream fos = new FileOutputStream("myfile\\4.txt");
    byte[] buf = new byte[1024];
    int len = 0;
    while((len = sis.read(buf))!=-1){
        fos.write(buf,0,len);
    }
    fos.close();
    sis.close();
}

 

021.11 IO流 序列流

标签:++   通过   enc   函数   tst   构造   方法   问题:   color   

原文地址:https://www.cnblogs.com/-nbloser/p/9071481.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!