黑马程序员技术交流社区

标题: 分割-合并 文件(练习) [打印本页]

作者: zhoubinjian    时间: 2016-4-26 13:08
标题: 分割-合并 文件(练习)
/*
分割文件
1.用输入字节流跟文件相关联
2.在while循环中建立输出流对象,跟目的文件相关联
3.输入字节流每读取一段,就存入输出流中
*/
/*
import java.io.*;
import java.util.*;
class Demo
{
        public static void main(String[] args)throws IOException
        {
               
                removeDir();
        }
        public static void removeDir()throws IOException
        {
                FileInputStream fis= new FileInputStream("D:\\JAVA\\123.JPG");
                FileOutputStream out=null;
                byte[] arr=new byte[1024*1024];
                int count=1,len=0;
                while((len=fis.read(arr))!=-1)
                {
                        out=new FileOutputStream("d:\\JAVA\\"+(count++)+".part");
                        out.write(arr,0,len);
                    out.close();
                }
                fis.close();
        }
}

*/
/*
合并文件
1.用输入字节流跟文件相关联
2.SequenceInputStream合并流将三个输入流合并成一个流
3.输出字节流跟目的文件相关联,通过不断读写,将合并流中的数据存入到输出流
*/

import java.io.*;
import java.util.*;
class Demo
{
        public static void main(String[] args)throws IOException
        {
               
                removeDir();
        }
        public static void removeDir()throws IOException
        {
                Vector<FileInputStream> v=new Vector();
                v.add(new FileInputStream("d:\\java\\part\\1.txt"));
                v.add(new FileInputStream("d:\\java\\part\\2.txt"));
                v.add(new FileInputStream("d:\\java\\part\\3.txt"));
                Enumeration<FileInputStream> en=v.elements();
                SequenceInputStream sis=new SequenceInputStream(en);
                FileOutputStream fis= new FileOutputStream("d:\\java\\part\\4.txt");
               
                byte[] arr=new byte[1024];
                int len=0;
                while((len=sis.read(arr))!=-1)
                {
                       
                        fis.write(arr,0,len);
                       
                    
                }
                fis.close();
                sis.close();
        }
}




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