- java.lang.Object
-
- java.io.Writer
-
- java.io.CharArrayWriter
-
- 实现的所有接口
-
Closeable
,Flushable
,Appendable
,AutoCloseable
public class CharArrayWriterextends Writer
该类实现了一个可用作Writer的字符缓冲区。 将数据写入流时,缓冲区会自动增长。 可以使用toCharArray()和toString()来检索数据。注意:在此类上调用close()无效,并且可以在流关闭后调用此类的方法而不生成IOException。
- 从以下版本开始:
- 1.1
-
-
构造方法摘要
构造方法 构造器 描述 CharArrayWriter()
创建一个新的CharArrayWriter。CharArrayWriter(int initialSize)
创建具有指定初始大小的新CharArrayWriter。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 CharArrayWriter
append(char c)
将指定的字符追加到此writer。CharArrayWriter
append(CharSequence csq)
将指定的字符序列追加到此writer。CharArrayWriter
append(CharSequence csq, int start, int end)
将指定字符序列的子序列追加到此writer。void
close()
关闭流。void
flush()
冲洗流。void
reset()
重置缓冲区,以便您可以再次使用它而不会丢弃已分配的缓冲区。int
size()
返回缓冲区的当前大小。char[]
toCharArray()
返回输入数据的副本。String
toString()
将输入数据转换为字符串。void
write(char[] c, int off, int len)
将字符写入缓冲区。void
write(int c)
将字符写入缓冲区。void
write(String str, int off, int len)
将一部分字符串写入缓冲区。void
writeTo(Writer out)
将缓冲区的内容写入另一个字符流。-
声明方法的类 java.io.Writer
nullWriter, write, write
-
-
-
-
构造方法详细信息
-
CharArrayWriter
public CharArrayWriter()
创建一个新的CharArrayWriter。
-
CharArrayWriter
public CharArrayWriter(int initialSize)
创建具有指定初始大小的新CharArrayWriter。- 参数
-
initialSize
- 指定初始缓冲区大小的int。 - 异常
-
IllegalArgumentException
- 如果initialSize为负数
-
-
方法详细信息
-
write
public void write(char[] c, int off, int len)
将字符写入缓冲区。- Specified by:
-
write
,类Writer
- 参数
-
c
- 要写入的数据 -
off
- 数据中的起始偏移量 -
len
- 写入的字符数 - 异常
-
IndexOutOfBoundsException
- 如果off
为负数,或者len
为负数,或者off + len
为负数或大于给定数组的长度
-
write
public void write(String str, int off, int len)
将一部分字符串写入缓冲区。- 重写:
-
write
类Writer
- 参数
-
str
- 要写入的字符串 -
off
- 开始读取字符的偏移量 -
len
- 要写入的字符数 - 异常
-
IndexOutOfBoundsException
- 如果off
为负数,或者len
为负数,或者off + len
为负数或大于给定字符串的长度
-
writeTo
public void writeTo(Writer out) throws IOException
将缓冲区的内容写入另一个字符流。- 参数
-
out
- 要写入的输出流 - 异常
-
IOException
- 如果发生I / O错误。
-
append
public CharArrayWriter append(CharSequence csq)
将指定的字符序列追加到此writer。调用
out.append(csq)
形式的此方法的行为与调用的方式完全相同out.write(csq.toString())
取决于规范
toString
字符序列csq
,整个序列可以不追加。 例如,调用字符缓冲区的toString
方法将返回一个子序列,其内容取决于缓冲区的位置和限制。- Specified by:
-
append
接口Appendable
- 重写:
-
append
类Writer
- 参数
-
csq
- 要追加的字符序列。 如果csq
是null
,则四个字符"null"
将附加到此"null"
器。 - 结果
- 这位作家
- 从以下版本开始:
- 1.5
-
append
public CharArrayWriter append(CharSequence csq, int start, int end)
将指定字符序列的子序列追加到此writer。形式的这种方法的调用
out.append(csq, start, end)
时csq
不是null
,行为以完全相同的方式调用out.write(csq.subSequence(start, end).toString())
- Specified by:
-
append
接口Appendable
- 重写:
-
append
类Writer
- 参数
-
csq
- 将附加子序列的字符序列。 如果csq
是null
,则将附加字符,就像csq
包含四个字符"null"
。 -
start
- 子序列中第一个字符的索引 -
end
- 子序列中最后一个字符后面的字符的索引 - 结果
- 这位作家
- 异常
-
IndexOutOfBoundsException
- 如果start
或end
为负数,则start
大于end
,或者end
大于csq.length()
- 从以下版本开始:
- 1.5
-
append
public CharArrayWriter append(char c)
将指定的字符追加到此writer。调用
out.append(c)
形式的此方法的行为与调用的方式完全相同out.write(c)
- Specified by:
-
append
接口Appendable
- 重写:
-
append
类Writer
- 参数
-
c
- 要追加的16位字符 - 结果
- 这位作家
- 从以下版本开始:
- 1.5
-
reset
public void reset()
重置缓冲区,以便您可以再次使用它而不会丢弃已分配的缓冲区。
-
toCharArray
public char[] toCharArray()
返回输入数据的副本。- 结果
- 从输入数据复制的字符数组。
-
size
public int size()
返回缓冲区的当前大小。- 结果
- 一个int,表示缓冲区的当前大小。
-
-