15.復(fù)制文本文件的5種方式

復(fù)制文本文件的5種方式

  • A:利用基本流一次讀寫一個字符
  • B:利用基本流一次讀寫一個字符數(shù)組
  • C:利用緩沖流一次讀寫一個字符
  • D:利用緩沖流一次讀寫一個字符數(shù)組
  • E:利用緩沖流的特有方法一次讀寫一個字符串
package com.itheima_06;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

/*
 *  復(fù)制文本文件(5種方式)
 *  
 *  數(shù)據(jù)源:
 *      FileWriterDemo.java
 *  目的地:
 *      Copy.java
*/      
public class CopyFileTest {
    public static void main(String[] args) throws IOException {
        /*
        method1("FileWriterDemo.java","Copy.java");
        method2("FileWriterDemo.java","Copy.java");
        method3("FileWriterDemo.java","Copy.java");
        method4("FileWriterDemo.java","Copy.java");
        method5("FileWriterDemo.java","Copy.java");
        */
        
        String srcFileName = "FileWriterDemo.java";
        String destFileName = "Copy.java";
        
//      method1(srcFileName,destFileName);
//      method2(srcFileName,destFileName);
//      method3(srcFileName,destFileName);
//      method4(srcFileName,destFileName);
        method5(srcFileName,destFileName);
    }
    
    //基本流一次讀寫一個字符
    public static void method1(String srcFileName,String destFileName) throws IOException {
        //創(chuàng)建輸入流對象
        FileReader fr = new FileReader(srcFileName);
        //創(chuàng)建輸出流對象
        FileWriter fw = new FileWriter(destFileName);
        
        //一次讀寫一個字符
        int ch;
        while((ch = fr.read())!=-1) {
            fw.write(ch);
        }
        
        //釋放資源
        fw.close();
        fr.close();
    }
    
    //基本流一次讀寫一個字符數(shù)組
    public static void method2(String srcFileName,String destFileName) throws IOException {
        //創(chuàng)建輸入流對象
        FileReader fr = new FileReader(srcFileName);
        //創(chuàng)建輸出流對象
        FileWriter fw = new FileWriter(destFileName);
        
        char[] chs = new char[1024];
        int len;
        while((len = fr.read(chs)) != -1) {
            fw.write(chs,0,len);
        }
        
        //釋放資源
        fw.close();
        fr.close();
    }
    
    //緩沖流一次讀寫一個字符
    public static void method3(String srcFileName,String destFileName) throws IOException {
        //創(chuàng)建緩沖流輸入對象
        BufferedReader br = new BufferedReader(new FileReader(srcFileName));
        //創(chuàng)建緩沖流輸出對象
        BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));
        
        //一次讀寫一個字符
        int ch;
        while((ch = br.read()) != -1) {
            bw.write(ch);
        }
        
        //釋放資源
        bw.close();
        br.close();
    }
    
    //緩沖流一次讀寫一個字符數(shù)組
    public static void method4(String srcFileName,String destFileName) throws IOException {
        //創(chuàng)建輸入流對象
        BufferedReader br = new BufferedReader(new FileReader(srcFileName));
        //創(chuàng)建輸出流對象
        BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));
        
        //一次讀寫一個字符數(shù)組
        char[] chs = new char[1024];
        int len;
        while((len = br.read(chs))!=-1) {
            bw.write(chs,0,len);
        }
        
        //釋放資源
        bw.close();
        br.close();
    }
    
    //緩沖流一次讀寫一個字符串(推薦)
    public static void method5(String srcFileName,String destFileName) throws IOException {
        //創(chuàng)建輸入流對象
        BufferedReader br = new BufferedReader(new FileReader(srcFileName));
        //創(chuàng)建輸出流對象
        BufferedWriter bw = new BufferedWriter(new FileWriter(destFileName));
        
        //一次讀寫一個字符串
        String line;
        while((line = br.readLine())!=null) {
            bw.write(line);
            bw.newLine();
            bw.flush();
        }
        
        //釋放資源
        bw.close();
        br.close();
        
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末离例,一起剝皮案震驚了整個濱河市辜腺,隨后出現(xiàn)的幾起案子咽白,更是在濱河造成了極大的恐慌绞佩,老刑警劉巖飞蚓,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件仗处,死亡現(xiàn)場離奇詭異胳喷,居然都是意外死亡寂纪,警方通過查閱死者的電腦和手機(jī)席吴,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來捞蛋,“玉大人孝冒,你說我怎么就攤上這事∧馍迹” “怎么了庄涡?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長搬设。 經(jīng)常有香客問我啼染,道長,這世上最難降的妖魔是什么焕梅? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任迹鹅,我火速辦了婚禮,結(jié)果婚禮上贞言,老公的妹妹穿的比我還像新娘斜棚。我一直安慰自己,他們只是感情好该窗,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布弟蚀。 她就那樣靜靜地躺著,像睡著了一般酗失。 火紅的嫁衣襯著肌膚如雪义钉。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天规肴,我揣著相機(jī)與錄音捶闸,去河邊找鬼夜畴。 笑死,一個胖子當(dāng)著我的面吹牛删壮,可吹牛的內(nèi)容都是我干的贪绘。 我是一名探鬼主播,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼央碟,長吁一口氣:“原來是場噩夢啊……” “哼税灌!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起亿虽,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤菱涤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后洛勉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體粘秆,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年坯认,在試婚紗的時候發(fā)現(xiàn)自己被綠了翻擒。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡牛哺,死狀恐怖陋气,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情引润,我是刑警寧澤巩趁,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站淳附,受9級特大地震影響议慰,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜奴曙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一别凹、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧洽糟,春花似錦炉菲、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至薪介,卻和暖如春祠饺,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背汁政。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工道偷, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留缀旁,地道東北人。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓试疙,卻偏偏與公主長得像诵棵,于是被迫代替她去往敵國和親抠蚣。 傳聞我的和親對象是個殘疾皇子祝旷,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 一、基礎(chǔ)知識:1嘶窄、JVM怀跛、JRE和JDK的區(qū)別:JVM(Java Virtual Machine):java虛擬機(jī)...
    殺小賊閱讀 2,378評論 0 4
  • 轉(zhuǎn)自 http://www.ibm.com/developerworks/cn/education/java/j-...
    抓兔子的貓閱讀 2,305評論 0 22
  • 冰冷的液體,冰冷的血液輸進(jìn)身體里柄冲。是什么感覺吻谋。好痛苦啊。病房里现横,好像死神就彌漫在每個角落漓拾。 我無法想象,當(dāng)儀器里顯...
    阿布兒閱讀 283評論 0 2
  • 每天早上我都會聽一聽電臺節(jié)目。有一天在一個我很喜歡的節(jié)目中姜盈,主播聊起了她生活中的煩惱低千,曾經(jīng)因工作上的事情感到非常的...
    速杭閱讀 200評論 0 1