java.io
Class Writer
java.lang.Object
|
+--java.io.Writer
- Direct Known Subclasses:
- BufferedWriter, CharArrayWriter, FilterWriter, OutputStreamWriter, PipedWriter, PrintStreamWriter, PrintWriter, StringWriter
- public abstract class Writer
- extends Object
Untamed: Abstract class for writing to character streams. The only methods that a
subclass must implement are write(char[], int, int), flush(), and close().
Most subclasses, however, will override some of the methods defined here in
order to provide higher efficiency, additional functionality, or both.
- Since:
- JDK1.1
- Version:
- 1.20, 01/12/03
- Author:
- Mark Reinhold
- See Also:
Writer,
BufferedWriter,
CharArrayWriter,
FilterWriter,
OutputStreamWriter,
FileWriter,
PipedWriter,
PrintWriter,
StringWriter,
Reader
Field Summary
protected Object
lock
The object used to synchronize operations on this stream.
private char[]
writeBuffer
Temporary buffer used to hold writes of strings and single characters
Constructor Summary
protected
Writer()
Create a new character-stream writer whose critical sections will
synchronize on the writer itself.
protected
Writer(Object lock)
Create a new character-stream writer whose critical sections will
synchronize on the given object.
Method Summary
abstract void
close()
Enabled: Close the stream, flushing it first.
abstract void
flush()
Enabled: Flush the stream.
void
write(char[] cbuf)
Enabled: Write an array of characters.
abstract void
write(char[] cbuf,
int off,
int len)
Enabled: Write a portion of an array of characters.
void
write(int c)
Enabled: Write a single character.
void
write(String str,
int off,
int len)
Enabled: Write a portion of a string.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Field Detail
writeBuffer
private char[] writeBuffer
- Temporary buffer used to hold writes of strings and single characters
writeBufferSize
private final int writeBufferSize
- Size of writeBuffer, must be>= 1
lock
protected Object lock
- The object used to synchronize operations on this stream. For
efficiency, a character-stream object may use an object other than
itself to protect critical sections. A subclass should therefore use
the object in this field rather than this or a synchronized
method.
Constructor Detail
Writer
protected Writer()
- Create a new character-stream writer whose critical sections will
synchronize on the writer itself.
Writer
protected Writer(Object lock)
- Create a new character-stream writer whose critical sections will
synchronize on the given object.
- Parameters:
lock - Object to synchronize on.
Method Detail
write
public void write(int c)
throws IOException
- Enabled: Write a single character. The character to be written is contained in
the 16 low-order bits of the given integer value; the 16 high-order bits
are ignored.
Subclasses that intend to support efficient single-character output
should override this method.
- Parameters:
c - int specifying a character to be written.
IOException
write
public void write(char[] cbuf)
throws IOException
- Enabled: Write an array of characters.
- Parameters:
cbuf - Array of characters to be written
IOException
write
public abstract void write(char[] cbuf,
int off,
int len)
throws IOException
- Enabled: Write a portion of an array of characters.
- Parameters:
cbuf - Array of charactersoff - Offset from which to start writing characterslen - Number of characters to write
IOException
write
public void write(String str)
throws IOException
- Enabled: Write a string.
- Parameters:
str - String to be written
IOException
write
public void write(String str,
int off,
int len)
throws IOException
- Enabled: Write a portion of a string.
- Parameters:
str - A Stringoff - Offset from which to start writing characterslen - Number of characters to write
IOException
flush
public abstract void flush()
throws IOException
- Enabled: Flush the stream. If the stream has saved any characters from the
various write() methods in a buffer, write them immediately to their
intended destination. Then, if that destination is another character or
byte stream, flush it. Thus one flush() invocation will flush all the
buffers in a chain of Writers and OutputStreams.
IOException
close
public abstract void close()
throws IOException
- Enabled: Close the stream, flushing it first. Once a stream has been closed,
further write() or flush() invocations will cause an IOException to be
thrown. Closing a previously-closed stream, however, has no effect.
IOException