/** * Close the stream. Any remaining content accumulated in the output buffer * will be written to the underlying {@link Writer}. After that * {@link Writer#close()} will be called. * * @throws IOException * if an I/O error occurs */ @Override public void close() throws IOException { processInput(true); flushOutput(); writer.close(); }
/** * Close the stream. Any remaining content accumulated in the output buffer * will be written to the underlying {@link Writer}. After that * {@link Writer#close()} will be called. * * @throws IOException * if an I/O error occurs */ @Override public void close() throws IOException { processInput(true); flushOutput(); writer.close(); }
/** * Write bytes from the specified byte array to the stream. * * @param b * the byte array containing the bytes to write * @param off * the start offset in the byte array * @param len * the number of bytes to write * @throws IOException * if an I/O error occurs */ @Override public void write(final byte[] b, int off, int len) throws IOException { while (len > 0) { final int c = Math.min(len, decoderIn.remaining()); decoderIn.put(b, off, c); processInput(false); len -= c; off += c; } if (writeImmediately) { flushOutput(); } }
/** * Write bytes from the specified byte array to the stream. * * @param b * the byte array containing the bytes to write * @param off * the start offset in the byte array * @param len * the number of bytes to write * @throws IOException * if an I/O error occurs */ @Override public void write(final byte[] b, int off, int len) throws IOException { while (len > 0) { final int c = Math.min(len, decoderIn.remaining()); decoderIn.put(b, off, c); processInput(false); len -= c; off += c; } if (writeImmediately) { flushOutput(); } }