//--- Beim Starten des Scripts zeigen Sie den Fenster mit den Eingabeparametern an
#property script_show_inputs
//--- Eingabeparameters
input ulong InpThresholdSize=20; // die Grenze von Dateigröße im Kilobyte
input string InpBigFolderName="big"; // Ordner für die größen Dateien
input string InpSmallFolderName="small"; // Ordner für die kleinen Dateien
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
string file_name; // Variable für Speichern die Dateinamen
string filter="*.csv"; // Der Filter für die Suche nach Dateien
ulong file_size=0; // die Größe der Datei in Bytes
int size=0; // die Anzahl der Dateien
//--- drucken Sie der Weg zum Ordner in der arbeiten werden
PrintFormat("Arbeiten in dem Ordner %s\\Files\\",TerminalInfoString(TERMINAL_COMMONDATA_PATH));
//--- erhalten Sie die Suche Handle von Grund auf den Gesamtordner aller Client-Terminals
long search_handle=FileFindFirst(filter,file_name,FILE_COMMON);
//--- prüfen Sie, ob die FileFindFirst() Funktion erfolgreich durchgearbeitet hat
if(search_handle!=INVALID_HANDLE)
{
//--- im Zyklus versetzen Sie die Dateien je nach ihrer Größe
do
{
//--- öffnen Sie die Datei
ResetLastError();
int file_handle=FileOpen(file_name,FILE_READ|FILE_CSV|FILE_COMMON);
if(file_handle!=INVALID_HANDLE)
{
//--- erhalten Sie die Größe der Datei
file_size=FileSize(file_handle);
//--- schließen Sie die Datei
FileClose(file_handle);
}
else
{
PrintFormat("Fehler beim Öffnen der Datei %s, Fehlercode = %d",file_name,GetLastError());
continue;
}
//--- drucken Sie die Größe der Datei
PrintFormat("die Größe der Datei %s ist %d Byte gleich",file_name,file_size);
//--- ermitteln Sie den Pfad um die Datei zu versetzen
string path;
if(file_size>InpThresholdSize*1024)
path=InpBigFolderName+"//"+file_name;
else
path=InpSmallFolderName+"//"+file_name;
//--- versetzen Sie die Datei
ResetLastError();
if(FileMove(file_name,FILE_COMMON,path,FILE_REWRITE|FILE_COMMON))
PrintFormat("%s Datei ist versetzt",file_name);
else
PrintFormat("Fehler, Kode = %d",GetLastError());
}
while(FileFindNext(search_handle,file_name));
//--- schließen Sie die Suche Handle
FileFindClose(search_handle);
}
else
Print("Dateien sind nicht geöffnet!");
}
|