MetaTrader 5 herunterladen

FolderCreate

Erzeugt ein Verzeichnis im Verzeichnis Files (abhängig vom Wert common_flag)

bool  FolderCreate(
   string  folder_name,       // Zeile mit dem Namen des neuen Ordners 
   int     common_flag=0      // Geltungsbereich
   );

Parameter

folder_name

[in]  der Name des Verzeichnisses, das erzeugt werden muss. Enthält den ganzen Pfad zum Ordner.

common_flag=0

[in] Flagge, die die Lage des Verzeichnisses bestimmt. Wenn common_flag=FILE_COMMON ist, befindet sich das Verzeichnis im Gesamtordner aller Client-Terminals \Terminal\Common\Files. Anderenfalls befindet sich das Verzeichnis im lokalen Ordner (MQL5\files oder MQL5\tester\files beim Testen).

Rückgabewert

Gibt true im Erfolgsfall zurück, anderenfalls false.

Bemerkung

Aus Sicherheitsgründen ist die Arbeit mit Dateien in MQL5 streng gesteuert. Dateien, mit denen Datei-Operationen mittels MQL5 durchgeführt werden, können nicht außerhalb der Datei-Sandbox sein.

Beispiel:

//+------------------------------------------------------------------+
//|                                            Demo_FolderCreate.mq5 |
//|                        Copyright 2011, MetaQuotes Software Corp. |
//|                     https://team.metaquotes.ru/email/view/599588 |
//+------------------------------------------------------------------+
#property copyright "Copyright 2011, MetaQuotes Software Corp."
#property link      "https://team.metaquotes.ru/email/view/599588"
#property version   "1.00"
//--- Beschreibung
#property description "Das Skript zeigt ein Beispiel der Funktion FolderCreate()."
#property description "Ein Externer Parameter definiert das Verzeichnis zum Erstellen von Ordnern."
#property description "Nach dem Ausführen des Skripts wird ein Ordner-Struktur erstellt."
 
//--- Beim Starten des Scripts zeigen Sie den Fenster mit den Eingabeparametern an
#property script_show_inputs
//--- Der Eingabeparameter definiert den Ordner, in dem das Script läuft
input bool     common_folder=false// Gemeinsamer Ordner von allen Terminals
int            flag=0;              // Flag-Wert bestimmt den Speicherort der Datei-Operationen
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   string working_folder;
//--- Setzen Sie den Flag-Wert, wenn der externe Parameter common_folder==true
   if(common_folder)
     {
      flag=FILE_COMMON;
      //--- Finden Sie in welchem Ordner wir arbeiten
      working_folder=TerminalInfoString(TERMINAL_COMMONDATA_PATH)+"\\MQL5\\Files";
     }
   else working_folder=TerminalInfoString(TERMINAL_DATA_PATH)+"\\MQL5\\Files";
//--- Der Ordner, der in Verzeichnis MQL5\Files erstellt wird
   string root="Folder_A";
   if(CreateFolder(working_folder,root,flag))
     {
      //--- Erstellen Sie einen Unterordner in ihm Child_Folder_B1
      string folder_B1="Child_Folder_B1";
      string path=root+"\\"+folder_B1;          // Erstellen Sie einen Ordner-Namen basierend auf der Struktur
      if(CreateFolder(working_folder,path,flag))
        {
         //--- In diesem Ordner erstellen Sie 3 anderen Unterordner
         string folder_C11="Child_Folder_C11";
         string child_path=path+"\\"+folder_C11;// Erstellen Sie einen Ordner-Namen basierend auf der Struktur
         CreateFolder(working_folder,child_path,flag);
         //--- Der zweite Unterordner
         string folder_C12="Child_Folder_C12";
         child_path=path+"\\"+folder_C12;
         CreateFolder(working_folder,child_path,flag);
 
         //--- Der dritte Unterordner
         string folder_C13="Child_Folder_C13";
         child_path=path+"\\"+folder_C13;
         CreateFolder(working_folder,child_path,flag);
        }
     }
//---
  }
//+------------------------------------------------------------------+
//| Versuchen Sie einen Ordner zu erstellen und zeigen die Meldungen |
//+------------------------------------------------------------------+
bool CreateFolder(string working_folder,string folder_path,int file_flag)
  {
//--- Debug-Meldung   
   PrintFormat("folder_path=%s",folder_path);
//--- Versuch, einen Ordner auf Pfad MQL5\Files zu erstellen
   if(FolderCreate(folder_path,file_flag))
     {
      //--- Zeigen Sie den vollen Pfad zum erstellten Ordner
      PrintFormat("Ordner %s wurde erstellt",working_folder+"\\"+folder_path);
      //--- Fehlercode rücksetzen
      ResetLastError();
      //--- Erfolg zurückgeben
      return true;
     }
   else
      PrintFormat("Ordner %s konnte nicht erstellt werden. Fehlercode %d",working_folder+folder_path,GetLastError());
//--- Versagen
   return false;
  }

Sehen Sie auch

FileOpen(), FolderClean(), FileCopy()