• (六)两种方式将一个文件的内容复制到另一个文件(第二种方式效率更高,第一种一个字符一个字符的读写,第二种一个数组一个数组的读写)


    一:将一个文件复制给另一个文件,每次读取一个字符
    import
    java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; public class CopyFile { /** * 需求:将一个文件复制给另一个文件 * @param args * @throws Exception */ public static void main(String[] args) throws Exception { // TODO Auto-generated method stub //读取一个已有的文件 FileReader fr = new FileReader("D:\log.txt"); //创建一个目的用于存储读到的数据 FileWriter fw = new FileWriter("D:\fuyanan.txt"); //频繁的读取数据,每次读取一个字符 int ch = fr.read(); while((ch = fr.read() )!= -1){ fw.write(ch); } //关闭数据流 fw.close(); fr.close(); } }

     二、将一个文件复制到另一个文件,每次读取buf个长度

    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    
    public class CopyFile2 {
    
        private static final int BUFFER_SIZE = 1024;
    
        /**
         * @param args
         * @throws IOException
         */
        public static void main(String[] args) throws IOException {
            // TODO Auto-generated method stub
            FileReader fr = null;
            FileWriter fw = null;
            try {
                fr = new FileReader("D:\log.txt");
                fw = new FileWriter("D:\fuluolin.txt");
    
                // 创建一个临时容器,用于缓存读取到的字符
                char[] buf = new char[BUFFER_SIZE];
    
                // 定义一个变量记录读取到的字符数,(其实就是往数组里装字符)
                int len = 0;
    
                while ((len = fr.read(buf)) != -1) {
                    fw.write(buf, 0, len);
                }
    
            } catch (Exception e) {
                throw new RuntimeException("读写失败");
            } finally {
    
                if (fw != null)
                    fw.close();
                if (fr != null)
                    fr.close();
            }
        }
    }
  • 相关阅读:
    渲染管线
    C++windows内核编程笔记day13 进程、线程与信号量
    稻盛和夫:真正的聪明人,善于把事物简单化
    学会把复杂问题简单化
    任何事物,只要抓住了规律,就等于牵住了牛鼻子
    菩萨奶奶引领我学佛
    数据库每分钟运行监控SQL
    MySQL 从库down机
    sql server 跟踪日志
    胡小林:把日常生活中碰到的事变成我们发露忏悔的机会
  • 原文地址:https://www.cnblogs.com/fuyanan/p/4099264.html
Copyright © 2020-2023  润新知