黑马程序员技术交流社区

标题: 复制文件就两步:读写两方法 [打印本页]

作者: 小穿钉    时间: 2015-11-2 22:50
标题: 复制文件就两步:读写两方法
package cn.com.copytxt;
/**
* 需求:将demo.txt文件复制到copy.txt文件
* 步骤:1.创建字符读取流并与文件相关联,读取文件的内容
*                 2.创建字符输出流,用来存储数据
*                 3.频繁读写数据
*                 4.关闭两个流
*
* @author Administrator
*
*/
import java.io.*;
public class CopyTxt {
        public static void main(String[] args) throws IOException{
                FileReader fr=new FileReader("demo.txt");
                FileWriter fw=new FileWriter("copy.txt");
                int ch=0;
                while((ch=fr.read())!=-1){
                        fw.write(ch);
                }
                fr.close();
                fw.close();
        }
}



作者: 小穿钉    时间: 2015-11-2 22:53
/**
*创建了一个数组临时存储数据,作为缓冲区
*/
package cn.com.copytxt;
import java.io.*;
public class CopytxtTest {
        private static final int BUFFER_SIZE = 1024;

        public static void main(String[] args){
                //创建字符读取流关联文件,读取数据
                FileReader fr=null;
                FileWriter fw=null;
                try{
                        fr=new FileReader("demo.txt");
                        fw=new FileWriter("copy.txt");
                        //创建容器来临时存储数据
                        char[] buf=new char[BUFFER_SIZE];
                        //定义一个变量来记录读取的字符数,其实就是往数组李存储的字符个数。
                        int len=0;
                        while((len=fr.read())!=-1){
                                fw.write(buf,0,3);}
                }catch(IOException e){
                        throw new RuntimeException("读写失败");
                }finally{
                        if(fw!=null)
                                try {
                                        fw.close();
                                } catch (IOException e) {
                                        throw new RuntimeException("关闭失败");
                                }
                        if(fr!=null)
                                try {
                                        fr.close();
                                } catch (IOException e) {
                                        throw new RuntimeException("关闭失败");
                                }
                }
        }
}







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