java.lang.Object
java.io.Writer
java.io.PipedWriter
- All Implemented Interfaces:
Closeable,Flushable,Appendable,AutoCloseable
Piped character-output streams.
- Since:
- 1.1
-
Field Summary
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a piped writer that is not yet connected to a piped reader.PipedWriter(PipedReader snk) Creates a piped writer connected to the specified piped reader. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Closes this piped output stream and releases any system resources associated with this stream.voidconnect(PipedReader snk) Connects this piped writer to a receiver.voidflush()Flushes this output stream and forces any buffered output characters to be written out.voidwrite(char[] cbuf, int off, int len) Writeslencharacters from the specified character array starting at offsetoffto this piped output stream.voidwrite(int c) Writes the specifiedcharto the piped output stream.
-
Constructor Details
-
PipedWriter
Creates a piped writer connected to the specified piped reader. Data characters written to this stream will then be available as input fromsnk.- Parameters:
snk- The piped reader to connect to.- Throws:
IOException- if an I/O error occurs.
-
PipedWriter
public PipedWriter()Creates a piped writer that is not yet connected to a piped reader. It must be connected to a piped reader, either by the receiver or the sender, before being used.- See Also:
-
-
Method Details
-
connect
Connects this piped writer to a receiver. If this object is already connected to some other piped reader, anIOExceptionis thrown.If
snkis an unconnected piped reader andsrcis an unconnected piped writer, they may be connected by either the call:or the call:src.connect(snk)The two calls have the same effect.snk.connect(src)- Parameters:
snk- the piped reader to connect to.- Throws:
IOException- if an I/O error occurs.
-
write
Writes the specifiedcharto the piped output stream. If a thread was reading data characters from the connected piped input stream, but the thread is no longer alive, then anIOExceptionis thrown.Implements the
writemethod ofWriter.- Overrides:
writein classWriter- Parameters:
c- thecharto be written.- Throws:
IOException- if the pipe isbroken,unconnected, closed or an I/O error occurs.
-
write
Writeslencharacters from the specified character array starting at offsetoffto this piped output stream. This method blocks until all the characters are written to the output stream. If a thread was reading data characters from the connected piped input stream, but the thread is no longer alive, then anIOExceptionis thrown.- Specified by:
writein classWriter- Parameters:
cbuf- the data.off- the start offset in the data.len- the number of characters to write.- Throws:
IndexOutOfBoundsException- Ifoffis negative, orlenis negative, oroff + lenis negative or greater than the length of the given arrayIOException- if the pipe isbroken,unconnected, closed or an I/O error occurs.
-
flush
Flushes this output stream and forces any buffered output characters to be written out. This will notify any readers that characters are waiting in the pipe.- Specified by:
flushin interfaceFlushable- Specified by:
flushin classWriter- Throws:
IOException- if the pipe is closed, or an I/O error occurs.
-
close
Closes this piped output stream and releases any system resources associated with this stream. This stream may no longer be used for writing characters.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classWriter- Throws:
IOException- if an I/O error occurs.
-