microsoft-azure-storage/src/com/microsoft/azure/storage/file/FileOutputStream.java
@Override
    @DoesServiceRequest
    public void write(final byte[] data, final int offset, final int length) throws IOException {
        if (offset < 0 || length < 0 || length > data.length - offset) {
            throw new IndexOutOfBoundsException();
        }

        this.writeInternal(data, offset, length);
    }
@Override
    @DoesServiceRequest
    public void write(final byte[] data, final int offset, final int length) throws IOException {
        if (offset < 0 || length < 0 || length > data.length - offset) {
            throw new IndexOutOfBoundsException();
        }

        this.writeInternal(data, offset, length);
    }
Writes length bytes from the specified byte array starting at offset to this output stream.

@param data
A <code>byte</code> array which represents the data to write.
@param offset
An <code>int</code> which represents the start offset in the data.
@param length
An <code>int</code> which represents the number of bytes to write.

@throws IOException
If an I/O error occurs. In particular, an IOException may be thrown if the output stream has been
closed.