W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵(lì)
java.lang.Object
|---java.io.Writer
|---|---java.io.BufferedWriter
public class BufferedWriter
extends Writer
將文本寫入字符輸出流,緩沖字符,以便高效寫入單個(gè)字符、數(shù)組和字符串。
可以指定緩沖區(qū)大小,也可以接受默認(rèn)大小。 對于大多數(shù)用途,默認(rèn)值足夠大。
提供了一個(gè) newLine() 方法,它使用系統(tǒng)屬性 line.separator 定義的平臺自己的行分隔符概念。 并非所有平臺都使用換行符 ('\n') 來終止行。 因此,調(diào)用此方法來終止每個(gè)輸出行優(yōu)于直接寫入換行符。
通常,Writer 將其輸出立即發(fā)送到底層字符或字節(jié)流。 除非需要快速輸出,否則建議將 BufferedWriter 包裝在任何 write() 操作可能代價(jià)高昂的 Writer 周圍,例如 FileWriters 和 OutputStreamWriters。 例如,
PrintWriter out
= new PrintWriter(new BufferedWriter(new FileWriter("foo.out")));
將 PrintWriter 的輸出緩沖到文件中。 如果沒有緩沖,每次調(diào)用 print() 方法都會導(dǎo)致字符轉(zhuǎn)換為字節(jié),然后立即寫入文件,這可能非常低效。
Since:
JDK1.1
從類 java.io.Writer 繼承的字段 |
---|
lock |
構(gòu)造函數(shù) | 描述 |
---|---|
BufferedWriter(Writer out) | 創(chuàng)建使用默認(rèn)大小的輸出緩沖區(qū)的緩沖字符輸出流。 |
BufferedWriter(Writer out, int sz) | 創(chuàng)建一個(gè)使用給定大小的輸出緩沖區(qū)的新緩沖字符輸出流。 |
修飾符和類型 | 方法 | 描述 |
---|---|---|
void | close() | 關(guān)閉流,首先刷新它。 |
void | flush() | 沖洗流。 |
void | newLine() | 寫入行分隔符。 |
void | write(char[] cbuf, int off, int len) | 寫入字符數(shù)組的一部分。 |
void | write(int c) | 寫入單個(gè)字符。 |
void | write(String s, int off, int len) | 寫入字符串的一部分。 |
從類 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
從類 java.io.Writer 繼承的方法 |
---|
append, append, append, write, write |
public BufferedWriter(Writer out)
創(chuàng)建使用默認(rèn)大小的輸出緩沖區(qū)的緩沖字符輸出流。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
out | 輸入流 |
public BufferedWriter(Writer out, int sz)
創(chuàng)建一個(gè)使用給定大小的輸出緩沖區(qū)的新緩沖字符輸出流。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
out | 輸入流 |
sz | 輸出緩沖區(qū)大小,一個(gè)正整數(shù) |
Throws:
Throw名稱 | Throw描述 |
---|---|
IllegalArgumentException | 如果 sz <= 0 |
public void write(int c) throws IOException
寫入單個(gè)字符。
覆蓋:
在 Writer 類中寫
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
c | int 指定要寫入的字符 |
Throws:
Throw名稱 | Throw描述 |
---|---|
IOException | 如果發(fā)生 I/O 錯(cuò)誤 |
public void write(char[] cbuf, int off, int len) throws IOException
寫入字符數(shù)組的一部分。
通常,此方法將給定數(shù)組中的字符存儲到此流的緩沖區(qū)中,并根據(jù)需要將緩沖區(qū)刷新到底層流。 但是,如果請求的長度至少與緩沖區(qū)一樣大,則此方法將刷新緩沖區(qū)并將字符直接寫入底層流。 因此冗余的 BufferedWriters 不會不必要地復(fù)制數(shù)據(jù)。
指定者:
在 Writer 類中寫
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
cbuf | 一個(gè)字符數(shù)組 |
off | 開始讀取字符的偏移量 |
len | 要寫入的字符數(shù) |
Throws:
Throw名稱 | Throw描述 |
---|---|
IOException | 如果發(fā)生 I/O 錯(cuò)誤 |
public void write(String s, int off, int len) throws IOException
寫入字符串的一部分。
如果 len 參數(shù)的值為負(fù)數(shù),則不寫入任何字符。 這與超類中該方法的規(guī)范相反,該規(guī)范要求拋出 IndexOutOfBoundsException。
覆蓋:
在 Writer 類中寫
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
s | 要寫入的字符串 |
off | 開始讀取字符的偏移量 |
len | 要寫入的字符數(shù) |
Throws:
Throw名稱 | Throw描述 |
---|---|
IOException | 如果發(fā)生 I/O 錯(cuò)誤 |
public void newLine() throws IOException
寫入行分隔符。 行分隔符字符串由系統(tǒng)屬性 line.separator 定義,不一定是單個(gè)換行符 ('\n')。
Throws:
Throw名稱 | Throw描述 |
---|---|
IOException | 如果發(fā)生 I/O 錯(cuò)誤 |
public void flush() throws IOException
沖洗流。
指定者:
在接口 Flushable 中刷新
指定者:
在 Writer 類中刷新
Throws:
Throw名稱 | Throw描述 |
---|---|
IOException | 如果發(fā)生 I/O 錯(cuò)誤 |
public void close() throws IOException
從班級復(fù)制的描述:Writer
關(guān)閉流,首先刷新它。 一旦流被關(guān)閉,進(jìn)一步的 write() 或 flush() 調(diào)用將導(dǎo)致拋出 IOException。 關(guān)閉以前關(guān)閉的流沒有效果。
指定者:
在接口 AutoCloseable 中關(guān)閉
指定者:
在接口Closeable中關(guān)閉
指定者:
關(guān)閉類Writer
Throws:
Throw名稱 | Throw描述 |
---|---|
IOException | 如果發(fā)生 I/O 錯(cuò)誤 |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: