Writes <code>len</code> bytes from array
<code>b</code>, in order, to
the output stream. If <code>b</code>
is <code>null</code>, a <code>NullPointerException</code>
is thrown. If <code>off</code> is negative,
or <code>len</code> is negative, or <code>off+len</code>
is greater than the length of the array
<code>b</code>, then an <code>IndexOutOfBoundsException</code>
is thrown. If <code>len</code> is zero,
then no bytes are written. Otherwise, the
byte <code>boff</code> is written first,
then <code>b[off+1]</code>, and so on; the
last byte written is <code>b[off+len-1]</code>.
@param b the data.
@param off the start offset in the data.
@param len the number of bytes to write.
@throws IOException if an I/O error occurs.
Writes <code>len</code> bytes from array <code>b</code>, in order, to the output stream. If <code>b</code> is <code>null</code>, a <code>NullPointerException</code> is thrown. If <code>off</code> is negative, or <code>len</code> is negative, or <code>off+len</code> is greater than the length of the array <code>b</code>, then an <code>IndexOutOfBoundsException</code> is thrown. If <code>len</code> is zero, then no bytes are written. Otherwise, the byte <code>boff</code> is written first, then <code>b[off+1]</code>, and so on; the last byte written is <code>b[off+len-1]</code>.
@param b the data. @param off the start offset in the data. @param len the number of bytes to write. @throws IOException if an I/O error occurs.