Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter
生活随笔
收集整理的這篇文章主要介紹了
Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java IO流學習總結四:緩沖流-BufferedReader、BufferedWriter
轉載請標明出處:http://blog.csdn.net/zhaoyanjun6/article/details/54911237
本文出自【趙彥軍的博客】
在上一篇文章中Java IO流學習總結三:緩沖流-BufferedInputStream、BufferedOutputStream介紹了緩沖流中的字節流,而這一篇著重介紹緩沖流中字符流BufferedReader、BufferedWriter。
- 類的繼承關系
Reader
|__ BufferedReader、StringReader、InputStreamReader|__ FileReader Writer
|__ BufferedWriter、StringWriter、OutputStreamWriter|__ FileWriter BufferedReader
- 構造函數
BufferedReader(Reader in, int sz) //創建一個使用指定大小輸入緩沖區的緩沖字符輸入流。 BufferedReader(Reader in) //創建一個使用默認大小輸入緩沖區的緩沖字符輸入流。
- 方法
int read() //讀取單個字符。
int read(char[] cbuf, int off, int len) //將字符讀入數組的某一部分。
String readLine() //讀取一個文本行。
boolean ready() //判斷此流是否已準備好被讀取。
void reset() //將流重置到最新的標記。
long skip(long n) //跳過字符。
void close() //關閉該流并釋放與之關聯的所有資源。
void mark(int readAheadLimit) //標記流中的當前位置。
boolean markSupported() //判斷此流是否支持 mark() 操作(它一定支持)。
BufferedWriter
- 構造函數
BufferedWriter(Writer out, int sz) //創建一個使用給定大小輸出緩沖區的新緩沖字符輸出流。BufferedWriter(Writer out) //建一個使用默認大小輸出緩沖區的緩沖字符輸出流。
- 方法
void close() // 關閉此流,但要先刷新它。
void flush() //刷新該流的緩沖。
void newLine() //寫入一個行分隔符。
void write(char[] cbuf, int off, int len) //寫入字符數組的某一部分。
void write(int c) //寫入單個字符。
void write(String s, int off, int len) //寫入字符串的某一部分。
實戰演練
復制F盤里面的一個txt文本
package com.app;import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;public class A4 {public static void main(String[] args) {String filePath = "F:/123.txt" ;String filePath2 = "F:/abc.txt" ;File file = new File( filePath ) ;File file2 = new File( filePath2 ) ;copyFile( file , file2 );}private static void copyFile( File oldFile , File newFile ){Reader reader = null ;BufferedReader bufferedReader = null ;Writer writer = null ;BufferedWriter bufferedWriter = null ;try {reader = new FileReader( oldFile ) ;bufferedReader = new BufferedReader( reader ) ;writer = new FileWriter( newFile ) ;bufferedWriter = new BufferedWriter( writer ) ;String result = null ; //每次讀取一行的內容while ( (result = bufferedReader.readLine() ) != null ){bufferedWriter.write( result ); //把內容寫入文件bufferedWriter.newLine(); //換行,result 是一行數據,所以沒寫一行就要換行 }bufferedWriter.flush(); //強制把數組內容寫入文件} catch (FileNotFoundException e) {e.printStackTrace();}catch (IOException e) {e.printStackTrace();}finally {try {bufferedWriter.close(); //關閉輸出流} catch (IOException e) {e.printStackTrace();}try {bufferedReader.close(); //關閉輸入流} catch (IOException e) {e.printStackTrace();}}}
} 運行結果:
個人微信號:zhaoyanjun125 , 歡迎關注
轉載于:https://www.cnblogs.com/zhaoyanjun/p/6376951.html
總結
以上是生活随笔為你收集整理的Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 去美容机构做一次针清祛痘大概花多少钱?
- 下一篇: 随想随笔