緩沖流

緩沖流原理

緩沖流原理
字節(jié)緩沖輸出流
package com.mujiachao.huanchongliu;

import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class BufferOut {
    public static void main(String[] args) throws IOException {
        FileOutputStream fileOutputStream = new FileOutputStream("F:\\電影\\111\\F.txt");
        BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
        bufferedOutputStream.write("我把數(shù)據(jù)通過字節(jié)緩沖輸出流寫入硬盤".getBytes());
        bufferedOutputStream.close();
    }
}

字節(jié)緩沖輸入流

字節(jié)緩沖輸入流
package com.mujiachao.huanchongliu;

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;

public class BufferIn {
    public static void main(String[] args) throws IOException {
        FileInputStream fileInputStream = new FileInputStream("F:\\電影\\111\\F.txt");
//        BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
        BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream,2048);
//        int len=0;
//        while ((len=bufferedInputStream.read())!=-1){
//            System.out.println(len);
//        }
        int len=0;
        byte[] bytes=new byte[2048];
        while ((len=bufferedInputStream.read(bytes))!=-1){
            System.out.println(new String(bytes));
        }
        bufferedInputStream.close();
    }
}

緩沖流效率測試

package com.mujiachao.huanchongliu;

import java.io.*;

public class CopyCeSu {
    public static void main(String[] args) throws IOException {
        long l = System.currentTimeMillis();
        FileOutputStream fileOutputStream = new FileOutputStream("F:\\電影\\111\\JavaEE開發(fā)的顛覆者 Spring Boot實戰(zhàn)  完整版.pdf");
        FileInputStream fileInputStream = new FileInputStream("C:\\Users\\Administrator\\Desktop\\JavaEE開發(fā)的顛覆者 Spring Boot實戰(zhàn)  完整版.pdf");
        BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
        BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
        int len=0;
        byte[] bytes=new byte[102400];
        while ((len=bufferedInputStream.read(bytes))!=-1){
            bufferedOutputStream.write(len);
        }
        bufferedOutputStream.close();
        bufferedInputStream.close();
        System.out.println(System.currentTimeMillis()-l+"毫秒");
    }

}

字符緩沖輸出流 bufferedWriter.newLine();換行

符緩沖輸出流
使用步驟
package com.mujiachao.huanchongliu;

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

public class BufferWriter {
    public static void main(String[] args) throws IOException {
        FileWriter fileWriter = new FileWriter("F:\\電影\\111\\a.txt");
        BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
        for (int i = 0; i < 10; i++) {
            bufferedWriter.write("字符緩沖輸出流");
            bufferedWriter.newLine();
        }
        bufferedWriter.close();
    }
}

字符緩沖輸入流 bufferedReader.readLine() 讀取一行

字符緩沖輸入流

步驟
package com.mujiachao.huanchongliu;

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

public class BufferReader {
    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(new FileReader("F:\\電影\\111\\a.txt"));
        String s;
        while ((s=bufferedReader.readLine())!=null){
            System.out.println(s);
        }
        bufferedReader.close();
    }
}

練習,對文本內(nèi)容進行排序

對文本內(nèi)容進行排序
package com.mujiachao.huanchongliu;

import java.io.*;
import java.util.HashMap;

public class LianXi {
    public static void main(String[] args) throws IOException {
        HashMap<String, String> objectObjectHashMap = new HashMap<>();
        FileReader fileReader = new FileReader("F:\\電影\\111\\in.txt");
        FileWriter fileWriter = new FileWriter("F:\\電影\\111\\out.txt");
        BufferedReader bufferedReader = new BufferedReader(fileReader);
        BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
        String s;
        while ((s=bufferedReader.readLine())!=null){
            String[] split = s.split("\\.");
            objectObjectHashMap.put(split[0],split[1]);
        }
        for (String key:objectObjectHashMap.keySet()) {
            s=key+"."+objectObjectHashMap.get(key);
            bufferedWriter.write(s);
            bufferedWriter.newLine();
        }
        bufferedWriter.close();
        bufferedReader.close();
    }
}
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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

  • 一.介紹 在我們學習字節(jié)流與字符流的時候,大家都進行過讀取文件中數(shù)據(jù)的操作,讀取數(shù)據(jù)量大的文件時,讀取的速度會很慢...
    走著別浪閱讀 405評論 0 2
  • 在學習字符流(FileReader、FileWriter)的時候,其中說如果需要指定編碼和緩沖區(qū)大小時,可以在字節(jié)...
    螺絲釘25閱讀 470評論 0 0
  • 本文主要內(nèi)容1、轉(zhuǎn)換流2、緩沖流3、各種流文件復制方式的效率比較4、IO流對象的操作規(guī)律 01轉(zhuǎn)換流 A: 轉(zhuǎn)換流...
    乘風破浪的姐姐閱讀 475評論 0 2
  • 緩沖流 緩沖流的基本原理,是在創(chuàng)建流對象時,會創(chuàng)建一個內(nèi)置的默認大小的緩沖區(qū)數(shù)組,通過緩沖區(qū)讀寫,減少系統(tǒng)IO 次...
    柒_wu7閱讀 223評論 0 0
  • 小二班團隊成員: 班主任:劉慧敏(小敏老師)一個90后姑娘,未婚,未婚的好處呢就是有更多的時間精力放在工作上。畢業(yè)...
    youhimi閱讀 572評論 0 1

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