Les opérations de fichier

Le groupe des fonctions pour le travail avec les fichiers.

Il y a deux répertoires (avec les sous-directoires), dans lesquels les fichiers de travail peuvent être installés:

  • le répertoire_des données_du terminal\MQL5\FILES\  (choisissez  le point du menu "Fichier" - "Ouvrir le répertoire des données" pour voir dans le terminal);
  • le dossier total de tous les terminaux établis sur l'ordinateur — est d'habitude disposé dans le répertoire C:\Documents and Settings\All Users\Application Data\MetaQuotes\Terminal\Common\Files.

D'une manière de programme on peut recevoir les noms de ces répertoires à l'aide de la fonction TerminalInfoString(), en utilisant les énumérations ENUM_TERMINAL_INFO_STRING:

//--- dossier, où se trouvent les données du terminal
   string terminal_data_path=TerminalInfoString(TERMINAL_DATA_PATH);
//--- Dossier total de tous les terminaux de client
   string common_data_path=TerminalInfoString(TERMINAL_COMMONDATA_PATH);

Le travail avec les fichiers d'autres répertoires est interdit.

Les fonctions de fichier permettent de travailler avec des soi-disant "canaux nommés". Pour cela il suffit d'appeler la fonctionFileOpen() avec des paramètres appropriés.

Fonction

Action

FileSelectDialog

Crée une boîte de dialogue d'ouverture/création d'un fichier ou d'un répertoire

FileFindFirst

Commence l'excédent des fichiers dans le répertoire correspondant conformément au filtre indiqué

FileFindNext

Continue la recherche commencée par la fonction FileFindFirst()

FileFindClose

Ferme le handle de la recherche

FileOpen

Ouvre un fichier avec un nom et un drapeau indiqués

FileDelete

Supprime le fichier indiqué

FileFlush

Écrit à un disque toutes les données restant dans le tampon du fichier d'entrée-de sortie

FileGetInteger

Reçoit la propriété entière du fichier

FileIsEnding

Définit la fin du fichier en train de la lecture

FileIsLineEnding

Définit la fin de la ligne dans le fichier du texte en train de la lecture

FileClose

Ferme le fichier auparavant ouvert

FileIsExist

Vérifie l'existence d'un fichier

FileCopy

Copie le fichier original d'un répertoire local ou commun à un autre fichier

FileMove

Déplace et renomme le fichier

FileReadArray

Lit les tableaux de tous les types, sauf les tableaux de chaîne (peut être un tableau des structures qui ne contient pas les chaînes et les tableaux dynamiques), du fichier binaire de la position courante de l'indicateur de fichier

FileReadBool

Lit du fichier du type CSV la chaîne de la position courante jusqu'au délimiteur (ou jusqu'à la fin de la ligne de texte) et transforme la chaîne lue en valeur du type bool

FileReadDatetime

Lit du fichier du type CSV la chaîne d'un des formats: "YYYY.MM.DD HH:MI:SS", "YYYY.MM.DD" ou "HH:MI:SS" - et la transforme en valeur du type datetime

FileReadDouble

Lit le nombre de l'exactitude double avec une virgule flottante (double) du fichier binaire de la position courante de l'indicateur de fichier

FileReadFloat

Lit de la position courante de l'indicateur de fichier la valeur du type float

FileReadInteger

Lit du fichier binaire la valeur du type int, short ou char en fonction de la longueur indiquée dans les bytes

FileReadLong

Lit de la position courante de l'indicateur de fichier la valeur du type long

FileReadNumber

Lit du fichier du type CSV  la chaîne de la position courante jusqu'au délimiteur (ou jusqu'à la fin de la ligne de texte) et transforme la chaîne lue en valeur du type double

FileReadString

Lit du fichier la chaîne de la position courante de l'indicateur de fichier

FileReadStruct

Lit du fichier binaire le contenu à la structure transmise à titre du paramètre

FileSeek

Déplace la position de l'indicateur de fichier par un nombre spécifié de bytes par rapport à la position indiquée

FileSize

Rend la dimension d'un fichier ouvert correspondant

FileTell

Rend la position courante de l'indicateur de fichier du fichier correspondant ouvert

FileWrite

Inscrit les données au fichier comme CSV ou TXT

FileWriteArray

Inscrit au fichier du type BIN les tableaux des tous les types, sauf les tableaux de chaîne

FileWriteDouble

Inscrit au fichier binaire la valeur du paramètre du type double de la position courante de l'indicateur de fichier

FileWriteFloat

Inscrit au fichier binaire la valeur du paramètre du type float de la position courante de l'indicateur de fichier

FileWriteInteger

Inscrit au fichier binaire la valeur du paramètre du type int de la position courante de l'indicateur de fichier

FileWriteLong

Inscrit au fichier binaire la valeur du paramètre du type long de la position courante de l'indicateur de fichier

FileWriteString

Inscrit au fichier du type BIN ou TXT la valeur du paramètre du type string de la position courante de l'indicateur de fichier

FileWriteStruct

Inscrit au fichier binaire le contenu de la structure, transmise à titre du paramètre de la position courante de l'indicateur de fichier

FileLoad

Lit toutes les données d'un fichier binaire spécifié et remplit le tableau d'éléments numériques ou de structures simples passé en argument

FileSave

Ecrit tous les éléments d'un tableau passé en argument dans un fichier binaire

FolderCreate

Crée le répertoire dans le dossier Files (en fonction de la valeur common_flag)

FolderDelete

Supprime le répertoire indiqué. Si le dossier n'est pas vide, elle ne peut pas être supprimé

FolderClean

Supprime tous les fichiers dans le dossier indiqué

Si le fichier s'ouvre pour l'enregistrement à l'aide de la fonction FileOpen(), tous les sous-dossiers, indiqué au chemin seront créés en cas de leur absence.