System.SysUtils.FileCreate

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

function FileCreate(const FileName: string): THandle;
function FileCreate(const FileName: string; Rights: Integer): THandle;
function FileCreate(const FileName: string; Mode: LongWord; Rights: Integer): THandle;

C++

extern DELPHI_PACKAGE Winapi::Windows::THandle __fastcall FileCreate(const System::UnicodeString FileName)/* overload */;

Propriétés

Type Visibilité  Source Unité  Parent
function public
System.SysUtils.pas
System.SysUtils.hpp
System.SysUtils System.SysUtils


Description

Crée un nouveau fichier.

FileCreate crée un nouveau fichier avec le nom spécifié. Si la valeur de retour n'est pas INVALID_HANDLE_VALUE, cela signifie que la fonction s'est exécutée correctement et que sa valeur est le handle de fichier du nouveau fichier. Si la valeur de retour est INVALID_HANDLE_VALUE, cela signifie qu'une erreur s'est produite.

Type de retour pour FileCreate. Depuis Delphi 2010, elle ne renvoie plus un type Entier mais THandle.

 var
   MyFile: THandle;
 begin
   MyFile := FileCreate('C:\temp\bla.txt');
   if MyFile = INVALID_HANDLE_VALUE then
     raise Exception.Create('File already exists');
 end;

Pour émuler l'ancien comportement, vous pouvez transtyper la valeur de retour de FileCreate en NativeInt. Une valeur de retour de -1 indique une erreur. Voici un snippet de code illustrant comment procéder.

var
  MyFile: Integer; // for 32bit platform.
begin
  MyFile := NativeInt(FileCreate('C:\temp\bla.txt'));
  if MyFile = -1 then
    raise Exception.Create('File already exists');
end;
Remarque: Le paramètre Rights est utilisé sur les plates-formes non Windows lorsque Mode inclut fmCreate. Pour plus de détails, consultez la description de l'appel système “open” propre à la plate-forme. Par exemple, vous pouvez consulter cette page du manuel Linux.

Voir aussi

Exemples de code