黑马程序员技术交流社区

标题: sequenceInputStream [打印本页]

作者: java--周群    时间: 2014-3-13 20:16
标题: sequenceInputStream
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.SequenceInputStream;
import java.util.Enumeration;
import java.util.Vector;

public class SequenceInputStreamDemo {

        public static void main(String[] args) throws IOException {
               
                FileInputStream fis1 = new FileInputStream("demo1.txt");
                FileInputStream fis2 = new FileInputStream("demo2.txt");
                FileInputStream fis3 = new FileInputStream("demo3.txt");
               
                Vector<FileInputStream> v = new Vector<FileInputStream>();
                v.add(fis1);
                v.add(fis2);
                v.add(fis3);
               
                Enumeration en = v.elements();
               
                SequenceInputStream sis = new SequenceInputStream(en);
               
                FileOutputStream fos = new FileOutputStream("demo13.txt");
               
                byte[] buf = new byte[1024];
               
                int len = 0;
               
                while((len= sis.read())!=-1){

                        fos.write(buf,0,len);
                }
               
                fos.close();
                sis.close();
               
               

        }

}


如上代码,将3个流合并成一个流,最终运行之后,目标文件显示占空间多少字节,但是打开文件,里面什么东西都没有,这是什么原因?

作者: KeepCoding    时间: 2014-3-13 20:26
while((len= sis.read(buf))!=-1){
作者: 艮昕辶    时间: 2014-3-13 20:51
while((len= sis.read())!=-1){

                        fos.write(buf,0,len);
                }

SequenceInputStream的read方法
返回读取字节数read(,,)
public int read(byte[] b,
                int off,
                int len)
         throws IOException
返回int字节read()
public int read()
         throws IOException




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2