鴻蒙OS CharArrayWriter

2022-10-18 16:20 更新

CharArrayWriter

java.lang.Object

|---java.io.Writer

|---|---java.io.CharArrayWriter

public class CharArrayWriter
extends Writer

此類實(shí)現(xiàn)了一個(gè)可用作 Writer 的字符緩沖區(qū)。 當(dāng)數(shù)據(jù)寫(xiě)入流時(shí),緩沖區(qū)會(huì)自動(dòng)增長(zhǎng)。 可以使用 toCharArray() 和 toString() 檢索數(shù)據(jù)。

注意:在這個(gè)類上調(diào)用 close() 沒(méi)有任何效果,并且可以在流關(guān)閉后調(diào)用該類的方法而不會(huì)產(chǎn)生 IOException。

Since:

JDK1.1

字段摘要

修飾符和類型 字段 描述
protected char[] buf 存儲(chǔ)數(shù)據(jù)的緩沖區(qū)。
protected int count 緩沖區(qū)中的字符數(shù)。
從類 java.io.Writer 繼承的字段
lock

構(gòu)造函數(shù)摘要

構(gòu)造函數(shù) 描述
CharArrayWriter() 創(chuàng)建一個(gè)新的 CharArrayWriter。
CharArrayWriter(int initialSize) 創(chuàng)建一個(gè)具有指定初始大小的新 CharArrayWriter。

方法總結(jié)

修飾符和類型 方法 描述
CharArrayWriter append(char c) 將指定的字符附加到這個(gè) writer。
CharArrayWriter append(CharSequence csq) 將指定的字符序列附加到此編寫(xiě)器。
CharArrayWriter append(CharSequence csq, int start, int end) 將指定字符序列的子序列附加到此編寫(xiě)器。
void close() 關(guān)閉流。
void flush() 沖洗流。
void reset() 重置緩沖區(qū),以便您可以再次使用它而不會(huì)丟棄已分配的緩沖區(qū)。
int size() 返回緩沖區(qū)的當(dāng)前大小。
char[] toCharArray() 返回輸入數(shù)據(jù)的副本。
String toString() 將輸入數(shù)據(jù)轉(zhuǎn)換為字符串。
void write(char[] c, int off, int len) 將字符寫(xiě)入緩沖區(qū)。
void write(int c) 將一個(gè)字符寫(xiě)入緩沖區(qū)。
void write(String str, int off, int len) 將字符串的一部分寫(xiě)入緩沖區(qū)。
void writeTo(Writer out) 將緩沖區(qū)的內(nèi)容寫(xiě)入另一個(gè)字符流。
從類 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
從類 java.io.Writer 繼承的方法
write, write

字段詳細(xì)信息

buf

protected char[] buf

存儲(chǔ)數(shù)據(jù)的緩沖區(qū)。

count

protected int count

緩沖區(qū)中的字符數(shù)。

構(gòu)造函數(shù)詳細(xì)信息

CharArrayWriter

public CharArrayWriter()

創(chuàng)建一個(gè)新的 CharArrayWriter。

CharArrayWriter

public CharArrayWriter(int initialSize)

創(chuàng)建一個(gè)具有指定初始大小的新 CharArrayWriter。

參數(shù):

參數(shù)名稱 參數(shù)描述
initialSize 一個(gè) int 指定初始緩沖區(qū)大小。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果 initialSize 為負(fù)

方法詳情

write

public void write(int c)

將一個(gè)字符寫(xiě)入緩沖區(qū)。

覆蓋:

在 Writer 類中寫(xiě)

參數(shù):

參數(shù)名稱 參數(shù)描述
c int 指定要寫(xiě)入的字符

write

public void write(char[] c, int off, int len)

將字符寫(xiě)入緩沖區(qū)。

指定者:

在 Writer 類中寫(xiě)

參數(shù):

參數(shù)名稱 參數(shù)描述
c 要寫(xiě)入的數(shù)據(jù)
off 數(shù)據(jù)中的起始偏移量
len 寫(xiě)入的字符數(shù)

write

public void write(String str, int off, int len)

將字符串的一部分寫(xiě)入緩沖區(qū)。

覆蓋:

在 Writer 類中寫(xiě)

參數(shù):

參數(shù)名稱 參數(shù)描述
str 要寫(xiě)入的字符串
off 開(kāi)始讀取字符的偏移量
len 要寫(xiě)入的字符數(shù)

writeTo

public void writeTo(Writer out) throws IOException

將緩沖區(qū)的內(nèi)容寫(xiě)入另一個(gè)字符流。

參數(shù):

參數(shù)名稱 參數(shù)描述
out 要寫(xiě)入的輸出流

Throws:

Throw名稱 Throw描述
IOException 如果發(fā)生 I/O 錯(cuò)誤。

append

public CharArrayWriter append(CharSequence csq)

將指定的字符序列附加到此編寫(xiě)器。

形式為 out.append(csq) 的此方法的調(diào)用與調(diào)用的行為方式完全相同

     out.write(csq.toString()) 

根據(jù)字符序列 csq 的 toString 規(guī)范,可能不會(huì)附加整個(gè)序列。 例如,調(diào)用字符緩沖區(qū)的 toString 方法將返回一個(gè)子序列,其內(nèi)容取決于緩沖區(qū)的位置和限制。

指定者:

在接口 Appendable 中追加

覆蓋:

追加到類 Writer

參數(shù):

參數(shù)名稱 參數(shù)描述
csq 要追加的字符序列。 如果 csq 為空,則將四個(gè)字符“null”附加到此編寫(xiě)器。

返回:

Writer

Since:

1.5

append

public CharArrayWriter append(CharSequence csq, int start, int end)

將指定字符序列的子序列附加到此編寫(xiě)器。

當(dāng) csq 不為空時(shí),以 out.append(csq, start, end) 形式調(diào)用此方法的行為與調(diào)用完全相同

     out.write(csq.subSequence(start, end).toString()) 

指定者:

在接口 Appendable 中追加

覆蓋:

追加到類 Writer

參數(shù):

參數(shù)名稱 參數(shù)描述
csq 從中追加子序列的字符序列。 如果 csq 為 null,則將附加字符,就好像 csq 包含四個(gè)字符“null”。
start 子序列中第一個(gè)字符的索引
end 子序列中最后一個(gè)字符之后的字符的索引

返回:

Writer

Throws:

Throw名稱 Throw描述
IndexOutOfBoundsException 如果 start 或 end 為負(fù)數(shù),則 start 大于 end,或者 end 大于 csq.length()

Since:

1.5

append

public CharArrayWriter append(char c)

將指定的字符附加到這個(gè) writer。

以 out.append(c) 形式調(diào)用此方法的行為與調(diào)用完全相同

     out.write(c) 

指定者:

在接口 Appendable 中追加

覆蓋:

追加到類 Writer

參數(shù):

參數(shù)名稱 參數(shù)描述
c 要附加的 16 位字符

返回:

Writer

Since:

1.5

reset

public void reset()

重置緩沖區(qū),以便您可以再次使用它而不會(huì)丟棄已分配的緩沖區(qū)。

toCharArray

public char[] toCharArray()

返回輸入數(shù)據(jù)的副本。

返回:

從輸入數(shù)據(jù)復(fù)制的字符數(shù)組。

size

public int size()

返回緩沖區(qū)的當(dāng)前大小。

返回:

表示緩沖區(qū)當(dāng)前大小的 int。

toString

public String toString()

將輸入數(shù)據(jù)轉(zhuǎn)換為字符串。

覆蓋:

類 Object 中的 toString

返回:

字符串。

flush

public void flush()

沖洗流。

指定者:

在接口 Flushable 中刷新

指定者:

在 Writer 類中刷新

close

public void close()

關(guān)閉流。 此方法不會(huì)釋放緩沖區(qū),因?yàn)榭赡苋孕枰鋬?nèi)容。 注意:在此類中調(diào)用此方法將無(wú)效。

指定者:

在接口 AutoCloseable 中關(guān)閉

指定者:

在接口Closeable中關(guān)閉

指定者:

關(guān)閉類作家

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)