Android-IO流之緩沖字符流BufferedReader/BufferedWriter

目錄

  1. BufferedReader/BufferedWriter
    --8.1 BufferedReader 緩沖輸入字符流
    --8.2 BufferedWriter 緩存輸出字符流
    --8.3 用BufferedWriter和BufferedReader進(jìn)行拷貝

8. BufferedReader/BufferedWriter(需要flush()才可寫(xiě)入)

8.1 BufferedReader

讀取字符時(shí)會(huì)一次讀取若干字符到緩沖區(qū),然后逐個(gè)返回給程序,降低讀取文件的次數(shù)。

  1. BufferedReader常用構(gòu)造方法
public BufferedReader(Reader in)
  1. BufferedReader重要方法
public int read()
public int read(char cbuf[], int off, int len)
String readLine(boolean ignoreLF)
public String readLine()

8.2 BufferedWriter

寫(xiě)出字符時(shí)先寫(xiě)到緩沖區(qū),緩沖區(qū)寫(xiě)滿再寫(xiě)到文件,降低寫(xiě)文件的次數(shù),提高效率。

  1. BufferedWriter常用構(gòu)造方法
public BufferedWriter(Writer out)
  1. BufferedWriter重要方法
public void write(int c) 
public void write(char cbuf[], int off, int len)
public void write(String s, int off, int len)
public void newLine() //可輸入一個(gè)跨平臺(tái)的換行符
public void flush() 
public void close()

8.3 用BufferedWriter和BufferedReader進(jìn)行拷貝

方式一:

        File dir = Environment.getExternalStorageDirectory();
        File file = new File(dir, "abc.txt");
        File dst = new File(dir, "dst4.txt");

        FileReader fr = new FileReader(file);
        BufferedReader br = new BufferedReader(fr);
        FileWriter fw = new FileWriter(dst);
        BufferedWriter bw = new BufferedWriter(fw);


        int len = -1;
        char[] buffer = new char[1024];
        while ((len = br.read(buffer)) != -1) {
            bw.write(buffer, 0, len);
            bw.flush();
        }

        fr.close();
        br.close();
        fw.close();
        fw.close();

方式二:

        File dir = Environment.getExternalStorageDirectory();
        File file = new File(dir, "abc.txt");
        File dst = new File(dir, "dst4.txt");

        FileReader fr = new FileReader(file);
        BufferedReader br = new BufferedReader(fr);
        FileWriter fw = new FileWriter(dst);
        BufferedWriter bw = new BufferedWriter(fw);


        String line = null;
        while((line = br.readLine())!=null){
            bw.write(line);
            bw.newLine();//可輸入一個(gè)跨平臺(tái)的換行符
            bw.flush();
        }

        fr.close();
        br.close();
        fw.close();
        fw.close();
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 概述: 1、IO流:即Input Output的縮寫(xiě)。 2、特點(diǎn):1)IO流用來(lái)處理設(shè)備間的數(shù)據(jù)傳輸。2)Java...
    玉圣閱讀 1,324評(píng)論 0 3
  • # 3.1 File # ## 3.1.1 File基本概念 ## 1.基本概念 -File類用于表示文件(目錄)...
    閆子揚(yáng)閱讀 561評(píng)論 0 0
  • 1 IO(二)No19 【 緩沖流:內(nèi)置了緩沖區(qū),對(duì)現(xiàn)有的流對(duì)象進(jìn)行了封裝,實(shí)現(xiàn)了高效的讀寫(xiě)操作并增強(qiáng)了功能 ...
    征程_Journey閱讀 804評(píng)論 0 1
  • 公交車(chē)行駛在 天安門(mén)前 車(chē)上 一京腔怒指著一村婦 你一鄉(xiāng)下人,有什么了不起 村婦答京婦 你是北京咋啦 你是給北京人...
    斌部t蛟閱讀 240評(píng)論 0 0
  • 今天這小天真扎實(shí),難道是要下雪的節(jié)奏?下班回來(lái)閨女又和往常一樣滔滔不絕的跟我“匯報(bào)”了她一天在學(xué)校的事情!“匯報(bào)”...
    五顏六色的圓圈小宿閱讀 113評(píng)論 0 0

友情鏈接更多精彩內(nèi)容