[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] |
Create a new file and return a handle to it.
Source position: filutilh.inc line 124
function FileCreate( |
const FileName: UnicodeString |
):THandle; |
const FileName: UnicodeString; |
Rights: Integer |
):THandle; |
const FileName: UnicodeString; |
ShareMode: Integer; |
Rights: Integer |
):THandle; |
const FileName: RawByteString |
):THandle; |
const FileName: RawByteString; |
Rights: Integer |
):THandle; |
const FileName: RawByteString; |
ShareMode: Integer; |
Rights: Integer |
):THandle; |
FileCreate creates a new file with name FileName on the disk and returns a file handle which can be used to read or write from the file with the FileRead and FileWrite functions.
If a file with name FileName already existed on the disk, it is overwritten.
The optional Mode parameter only has an effect under unix, where it can be used to set the mode (read, write, execute, sticky bit, setgid and setuid flags) of the created file to the specified custom value. On other platfors, the Mode parameter is ignored.
If an error occurs (e.g. disk full or non-existent path), the function returns THandle(-1).
|
Close a file handle. |
|
|
Write data from a buffer to a given filehandle. |
|
|
Open an existing file and return a filehandle |
|
|
Read data from a filehandle in a buffer. |
|
|
Truncate an open file to a given size. |
|
|
Set the current file position on a file handle. |
Program Example37; { This program demonstrates the FileCreate/FileSeek/FileReed/FileTruncate functions } Uses sysutils; Var I,J,F : Longint; Begin F:=FileCreate ('test.dat'); If F=-1 then Halt(1); For I:=0 to 100 do FileWrite(F,I,SizeOf(i)); FileClose(f); F:=FileOpen ('test.dat',fmOpenRead); For I:=0 to 100 do begin FileRead (F,J,SizeOF(J)); If J<>I then Writeln ('Mismatch at file position ',I) end; FileSeek(F,0,fsFromBeginning); Randomize; Repeat FileSeek(F,Random(100)*4,fsFromBeginning); FileRead (F,J,SizeOf(J)); Writeln ('Random read : ',j); Until J>80; FileClose(F); F:=FileOpen('test.dat',fmOpenWrite); I:=50*SizeOf(Longint); If FileTruncate(F,I) then Writeln('SuccessFully truncated file to ',I,' bytes.'); FileClose(F); End.