microsoft-azure-storage/src/com/microsoft/azure/storage/file/CloudFile.java
@DoesServiceRequest
    public FileOutputStream openWriteNew(final long length, AccessCondition accessCondition,
            FileRequestOptions options, OperationContext opContext) throws StorageException, URISyntaxException {
        return openOutputStreamInternal(length, accessCondition, options, opContext);
    }
@DoesServiceRequest
    public FileOutputStream openWriteNew(final long length, AccessCondition accessCondition,
            FileRequestOptions options, OperationContext opContext) throws StorageException, URISyntaxException {
        return openOutputStreamInternal(length, accessCondition, options, opContext);
    }
Opens an output stream object to write data to the file, using the specified lease ID, request options and
operation context. The file does not need to yet exist and will be created with the length specified. If the file
already exists on the service, it will be overwritten.
<p>
To avoid overwriting and instead throw an error, please pass in an {@link AccessCondition} generated using
{@link AccessCondition#generateIfNotExistsCondition()}.

@param length
A <code>long</code> which represents the length, in bytes, of the stream to create.
@param accessCondition
An {@link AccessCondition} object which represents the access conditions for the file.
@param options
A {@link FileRequestOptions} object that specifies any additional options for the request. Specifying
<code>null</code> will use the default request options from the associated service client (
{@link CloudFileClient}).
@param opContext
An {@link OperationContext} object which represents the context for the current operation. This object
is used to track requests to the storage service, and to provide additional runtime information about
the operation.

@return A {@link FileOutputStream} object used to write data to the file.

@throws StorageException
If a storage service error occurred.
@throws URISyntaxException