FileSize

Dosya boyutu değerine bayt cinsinden dönüş yapar.

ulong  FileSize(
   int  file_handle    // Dosya tanıtıcısı
   );

Parametreler

file_handle

[in] FileOpen() fonksiyonunun dönüş yaptığı dosya tanımlayıcısı.

Dönüş değeri

int tipli değer.

Not

Hata ile ilgili bilgi almak için GetLastError() fonksiyonunu çağırın.

Örnek:

//--- script çalıştığında giriş parametrelerinin penceresini göster
#property script_show_inputs
//--- giriş parametreleri
input ulong  InpThresholdSize=20;        // kilobayt bazında dosya boyutu
input string InpBigFolderName="big";     // büyük dosyalar için klasör
input string InpSmallFolderName="small"// küçük dosyalar için klasör
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   string   file_name;      // isimleri depolamak için bir değişken
   string   filter="*.csv"// dosyaların aranması için filtre
   ulong    file_size=0;    // bayt bazında dosya büyüklüğü
   int      size=0;         // dosyaların sayısı
//--- çalışacağımız dosyanın adresini çıktıla
   PrintFormat("%s\\Files\\ klasöründe çalışılıyor",TerminalInfoString(TERMINAL_COMMONDATA_PATH));
//--- arama işleyicisini, tüm terminallerin ortak kök klasöründe al
   long search_handle=FileFindFirst(filter,file_name,FILE_COMMON);
//--- FileFindFirst() fonksiyonu başarıyla uygulanmış mı kontrol et
   if(search_handle!=INVALID_HANDLE)
     {
      //--- dosyaları boyutlarına göre döngü içinde taşı
      do
        {
         //--- dosyayı aç
         ResetLastError();
         int file_handle=FileOpen(file_name,FILE_READ|FILE_CSV|FILE_COMMON);
         if(file_handle!=INVALID_HANDLE)
           {
            //--- dosya boyutunu al
            file_size=FileSize(file_handle);
            //--- dosyayı kapa
            FileClose(file_handle);
           }
         else
           {
            PrintFormat("%s dosyası açılamadı, Hata kodu = %d",file_name,GetLastError());
            continue;
           }
         //--- dosya boyutunu çıktıla
         PrintFormat("%s dosyasının boyutu %d bayttır",file_name,file_size);
         //--- dosyanın taşınacağı hedef adresi tanımla
         string path;
         if(file_size>InpThresholdSize*1024)
            path=InpBigFolderName+"//"+file_name;
         else
            path=InpSmallFolderName+"//"+file_name;
         //--- dosyayı taşı
         ResetLastError();
         if(FileMove(file_name,FILE_COMMON,path,FILE_REWRITE|FILE_COMMON))
            PrintFormat("%s dosyası taşındı",file_name);
         else
            PrintFormat("Hata, kod = %d",GetLastError());
        }
      while(FileFindNext(search_handle,file_name));
      //--- arama işleyicisini kapa
      FileFindClose(search_handle);
     }
   else
      Print("Dosyalar bulunamadı!");
  }