[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'Classes' (#rtl)

# TFileStream.Create

Creates a file stream.

## Declaration

Source position: classesh.inc line 1032

`public constructor TFileStream.Create(`
`const AFileName: string;`
`Mode: Word`
`); constructor TFileStream.Create(`
`const AFileName: string;`
`Mode: Word;`
`Rights: Cardinal`
`);`

## Description

Create creates a new instance of a TFileStream class. It opens the file AFileName with mode Mode, which can have one of the following values:

fmCreate | TFileStream.Create creates a new file if needed.
fmOpenRead | TFileStream.Create opens a file with read-only access.
fmOpenWrite | TFileStream.Create opens a file with write-only access.
fmOpenReadWrite | TFileStream.Create opens a file with read-write access.

These constants (except fmCreate) can be OR-ed with the following to specify how sharing and file locking is supposed to be handled:

fmShareCompat | Open file in DOS share-compatibility mode
fmShareExclusive | Lock file for exclusive use
fmShareDenyWrite | Lock file so other processes can only read.
fmShareDenyRead | Lock file so other processes cannot read.
fmShareDenyNone | Do not lock file.

Note that sharing is advisory on Unix-like platforms.

After the file has been opened in the requested mode and a handle has been obtained from the operating system, the inherited constructor is called.

## Errors

If the file could not be opened in the requested mode, an EFOpenError exception is raised.

## See also

TStream |  | Base class for streams.
TFileStream.FileName |  | The filename of the stream.
THandleStream.Create |  | Create a handlestream from an OS Handle.