FileDelete

Müşteri terminalinin yerel klasöründe belirtilen dosyayı siler.

bool  FileDelete(
   const string  file_name,     // Silinecek dosya adı 
   int           common_flag=0  // Silinecek dosyanın konumu
   );

Parametreler

file_name

[in]  Dosya ismi.

common_flag=0

[in]  Dosya konumunu belirleyen bayrak. common_flag = FILE_COMMON ise dosya, tüm kullanıcılar için paylaşılan bir klasöre \Terminal\Common\Files, aksi durumda bir yerel klasöre yerleştirilmiştir.

Dönüş değeri

Başarısız sonuç durumunda false değerine dönüş yapar.

Not

Dosya işlemleri, MQL5 dili içerisinde güvenlik amacıyla sıkı şekilde kontrol edilmektedir. İşlemleri, MQL5 araçları ile yürütülen dosyalar, dosya güvenlik-ortamı (sandbox) dışında yer alamaz.

Müşteri terminalinin yerel klasöründe belirtilen bir dosyayı siler (MQL5\Files veya sınama durumunda MQL5\Tester\Files). common_flag = FILE_COMMON ise, fonksiyon dosyayı paylaşılan tüm terminal klasörlerinden siler.

Örnek:

//--- script çalıştığında giriş parametrelerinin penceresini göster
#property script_show_inputs
//--- eski dosya için tarih
input datetime InpFilesDate=D'2013.01.01 00:00';
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   string   file_name;      // isimleri depolamak için bir değişken
   string   filter="*.txt"// dosyaları aramak için filtre
   datetime create_date;    // dosya oluşturulma zamanı
   string   files[];        // dosya isimlerinin listesi
   int      def_size=25;    // varsayılan dizi büyüklüğü
   int      size=0;         // dosyaların sayısı
//--- dizi için bellek tahsis et
   ArrayResize(files,def_size);
//--- yerel klasörün kök dizinindeki arama işleyicisini al
   long search_handle=FileFindFirst(filter,file_name);
//--- FileFindFirst() uygulaması başarılı mı kontrol et
   if(search_handle!=INVALID_HANDLE)
     {
      //--- dosyaları döngüde ara
      do
        {
         files[size]=file_name;
         //--- dizi büyüklüğünü artır
         size++;
         if(size==def_size)
           {
            def_size+=25;
            ArrayResize(files,def_size);
           }
         //--- hata değerini sıfırla
         ResetLastError();
         //--- dosya oluşturulma zamanını al
         create_date=(datetime)FileGetInteger(file_name,FILE_CREATE_DATE,false);
         //--- dosya eski mi kontrol et
         if(create_date<InpFilesDate)
           {
            PrintFormat("%s dosyası silinmiş!",file_name);
            //--- eski dosyayı sil
            FileDelete(file_name);
           }
        }
      while(FileFindNext(search_handle,file_name));
      //--- arama işleyicisini kapa
      FileFindClose(search_handle);
     }
   else
     {
      Print("Dosyalar bulunamadı!");
      return;
     }
//--- kalan dosyaları kontrol et
   PrintFormat("Sonuçlar:");
   for(int i=0;i<size;i++)
     {
      if(FileIsExist(files[i]))
         PrintFormat("%s dosyası mevcut!",files[i]);
      else
         PrintFormat("%s dosyası silinmiş!",files[i]);
     }
  }