- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.SequenceInputStream;
- import java.util.Enumeration;
- import java.util.Vector;
- /**
- *
- * @author Administrator
- * 思路:
- * 1.新建一个文件输入流数组
- * 2.新建文件输入刘对象,添加到数组中
- * 3.
- */
- public class SequenceDome {
- public static void main(String[] args) throws IOException {
- Vector<FileInputStream> v= new Vector<FileInputStream>();
- v.add(new FileInputStream("d:\\splitfile0.part"));
- v.add(new FileInputStream("d:\\splitfile0.part"));
- v.add(new FileInputStream("d:\\splitfile0.part"));
- Enumeration<FileInputStream> en =v.elements();//返回此向量的组件的枚举。
- SequenceInputStream sis= new SequenceInputStream(en);
- // 表示其他输入流的逻辑串联。它从输入流的有序集合开始,并从第一个输入流开始读取,直到到达文件末尾,
- // 接着从第二个输入流读取,依次类推,直到到达包含的最后一个输入流的文件末尾为止。
- FileOutputStream fos= new FileOutputStream("d:\\ddddd.mp3");
- byte[] buf=new byte[1024];
- int len=0;
- while((len = sis.read(buf))!=-1){
- fos.write(buf,0,len);
- }
- fos.close();
- sis.close();
-
-
- }
- }
复制代码
其实的这段代码的具体意义怎么解释
- Enumeration<FileInputStream> en =v.elements();//返回此向量的组件的枚举。
- SequenceInputStream sis= new SequenceInputStream(en);
复制代码
老师讲一句话带过,我还是不求甚解,前面的都可以想通,但是这两行代码结合帮助文档还是不理解,只是知道它的作用是把三个文件输入流合并到一个流内,但是具体应该怎么解释? |
|