黑马程序员技术交流社区

标题: 复制一个文件的最高效率的方式? [打印本页]

作者: itisdream    时间: 2014-6-26 19:52
标题: 复制一个文件的最高效率的方式?
FileInputStream    FileOutputStream
Reader Writer
InputStream  OutputStream  
FileReader  FileWriter
BufferedReader BufferedWriter
怎么用才能让文本文件最高效率的复制啊?
作者: 798    时间: 2014-6-26 20:26
使用字符缓冲输入流,并且每次读写一个字符数组。
作者: 那片天空    时间: 2014-6-27 00:01
public class ZiJieWenJian {
        public static void main(String[] args) throws IOException {
                //定义个变量接收复制前的时间
                long start=System.currentTimeMillis();
                //缓冲自己流
                BufferedInputStream bis = new BufferedInputStream(new FileInputStream(
                                "a.txt"));
                BufferedOutputStream bos = new BufferedOutputStream(
                                new FileOutputStream("b.txt"));
               
                byte by[] = new byte[1024];
                int len;
                //一次读取一个字节数组
                while ((len = bis.read(by)) != -1) {
                        bos.write(by, 0, len);

                }
                bos.close();
                bis.close();
                //输出复制后的当前时间减去复制前的时间,得到复制文件用了多长时间
                System.out.println(System.currentTimeMillis()-start);
        }

}

我这样试了几次,在你提出这这几种中,这个组合是最块的。




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