黑马程序员技术交流社区

标题: 编写程序拷贝一个文件, 尽量使用效率高的方式. [打印本页]

作者: 刘治广    时间: 2013-4-17 20:27
标题: 编写程序拷贝一个文件, 尽量使用效率高的方式.

import java.io.*;
public class Test8 {

        /**
         * @param args
         */
        public static void main(String[] args) {
                copy();

        }
        public static void copy(){
                FileWriter fw = null;  //初始化写入流并赋值为null
                FileReader fr = null;  //初始化读取流并赋值为nul
                try {
                          fw = new FileWriter("E:\\sa.txt"); //创建目标文件储存目的地
                          fr = new FileReader("D:\\sa.txt"); //读取目标文件
                          char [] buf = new char[1024];
                          int len = 0; //数据的开始
                          while ((len = fr.read(buf)) != -1) {
                                
                                fw.write(buf,0,len); //写入目标文件并定义数据的长度
                          }
                    }
                catch (IOException e) {
                     throw new RuntimeException("操作失败!");
                }
                finally   
                {
                        if(fr != null)
                                try {
                                         fr.close();  //关闭读取流
                                    }
                            catch (IOException e) {
        
                                    }
                            if(fw != null)
                                        try {
                                                 fw.close();  //关闭写入流
                                            }
                                    catch (IOException e) {
               
                                            }
                }
        }

}

前一个主函数里,没写方法。不好意思
作者: 回首、后_街    时间: 2013-4-17 21:50
使用缓冲技术实现文件的拷贝  自己加一下try{}catch {}

BufferedWriter bufw = new BufferedWriter(new FileWriter("E:\\sa.txt"));//创建目标文件储存目的地
                 BufferedReader bufr = new BufferedReader(new FileReader("D:\\sa.txt"));//读取目标文件
                 String str=null;
                 while((str=bufr.readLine())!=null)
                 {
                         bufw.write(str);
                 }




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