public class CharArrayWriter extends Writer
Writer
for class for writing content to an (internal)
char array. As bytes are written to this writer, the char array may be
expanded to hold more characters. When the writing is considered to be
finished, a copy of the char array can be requested from the class.CharArrayReader
Modifier and Type | Field and Description |
---|---|
protected char[] |
buf
The buffer for characters.
|
protected int |
count
The ending index of the buffer.
|
Constructor and Description |
---|
CharArrayWriter()
Constructs a new
CharArrayWriter which has a buffer allocated
with the default size of 32 characters. |
CharArrayWriter(int initialSize)
Constructs a new
CharArrayWriter which has a buffer allocated
with the size of initialSize characters. |
Modifier and Type | Method and Description |
---|---|
CharArrayWriter |
append(char c)
Appends a char
c to the CharArrayWriter . |
CharArrayWriter |
append(CharSequence csq)
Appends a
CharSequence to the CharArrayWriter . |
CharArrayWriter |
append(CharSequence csq,
int start,
int end)
Append a subsequence of a
CharSequence to the CharArrayWriter . |
void |
close()
Closes this writer.
|
void |
flush()
Flushes this writer.
|
void |
reset()
Resets this writer.
|
int |
size()
Returns the size of this writer, that is the number of characters it
stores.
|
char[] |
toCharArray()
Returns the contents of the receiver as a char array.
|
String |
toString()
Returns the contents of this
CharArrayWriter as a string. |
void |
write(char[] buffer,
int offset,
int len)
Writes
count characters starting at offset in c
to this writer. |
void |
write(int oneChar)
Writes the specified character
oneChar to this writer. |
void |
write(String str,
int offset,
int count)
Writes
count characters starting at offset from
the string str to this CharArrayWriter. |
void |
writeTo(Writer out)
Writes the contents of this
CharArrayWriter to another Writer . |
protected char[] buf
protected int count
public CharArrayWriter()
CharArrayWriter
which has a buffer allocated
with the default size of 32 characters. This buffer is also used as the
lock
to synchronize access to this writer.public CharArrayWriter(int initialSize)
CharArrayWriter
which has a buffer allocated
with the size of initialSize
characters. The buffer is also used
as the lock
to synchronize access to this writer.initialSize
- the initial size of this CharArrayWriters buffer.IllegalArgumentException
- if initialSize < 0
.public void close()
CharArrayWriter
does nothing.public void flush()
CharArrayWriter
does nothing.public void reset()
public int size()
public char[] toCharArray()
public String toString()
CharArrayWriter
as a string. The
string returned is a copy and any modifications made to this writer after
calling this method are not reflected in the result.public void write(char[] buffer, int offset, int len)
count
characters starting at offset
in c
to this writer.write
in class Writer
buffer
- the non-null array containing characters to write.offset
- the index of the first character in buf
to write.len
- maximum number of characters to write.IndexOutOfBoundsException
- if offset < 0
or len < 0
, or if
offset + len
is bigger than the size of c
.public void write(int oneChar)
oneChar
to this writer.
This implementation writes the two low order bytes of the integer
oneChar
to the buffer.public void write(String str, int offset, int count)
count
characters starting at offset
from
the string str
to this CharArrayWriter.write
in class Writer
str
- the non-null string containing the characters to write.offset
- the index of the first character in str
to write.count
- the number of characters from str
to write.NullPointerException
- if str
is null
.StringIndexOutOfBoundsException
- if offset < 0
or count < 0
, or if
offset + count
is bigger than the length of
str
.public void writeTo(Writer out) throws IOException
CharArrayWriter
to another Writer
. The output is all the characters that have been written to the
receiver since the last reset or since it was created.out
- the non-null Writer
on which to write the contents.NullPointerException
- if out
is null
.IOException
- if an error occurs attempting to write out the contents.public CharArrayWriter append(char c)
c
to the CharArrayWriter
. The method works
the same way as write(c)
.append
in interface Appendable
append
in class Writer
c
- the character appended to the CharArrayWriter.public CharArrayWriter append(CharSequence csq)
CharSequence
to the CharArrayWriter
. The method
works the same way as write(csq.toString())
. If csq
is
null
, then it will be substituted with the string "null"
.append
in interface Appendable
append
in class Writer
csq
- the CharSequence
appended to the CharArrayWriter
, may be null
.public CharArrayWriter append(CharSequence csq, int start, int end)
CharSequence
to the CharArrayWriter
. The first and last characters of the subsequence are
specified by the parameters start
and end
. A call to
CharArrayWriter.append(csq)
works the same way as CharArrayWriter.write(csq.subSequence(start, end).toString)
. If csq
is null
, then it will be substituted with the string "null"
.append
in interface Appendable
append
in class Writer
csq
- the CharSequence
appended to the CharArrayWriter
, may be null
.start
- the index of the first character in the CharSequence
appended to the CharArrayWriter
.end
- the index of the character after the last one in the CharSequence
appended to the CharArrayWriter
.IndexOutOfBoundsException
- if start < 0
, end < 0
, start > end
,
or if end
is greater than the length of csq
.