Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
Demo_FileFind - скрипт для MetaTrader 5
- Просмотров:
- 2188
- Рейтинг:
- Опубликован:
- 2013.03.25 10:17
- Обновлен:
- 2016.11.22 07:33
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Этот скрипт является простым примером использования функций для поиска и работы с файлами и директориями.
Данный скрипт перебирает и выводит во вкладку "Эксперты" имена всех файлов и директорий, которые находятся в локальной папке терминала. Местоположение локальной папки терминала можно получить при помощи вызова функции TerminalInfoString().
PrintFormat("Путь к локальной папке терминала: %s\\Files\\",TerminalInfoString(TERMINAL_DATA_PATH));
Для нахождения директорий скрипт использует полезное свойство функции FileIsExist(). Если в параметре функции указать имя существующей директории, то функция вернет "false", а в переменную _LastError будет записана ошибка 5018 - "Это не файл, а директория".
Подробнее с описаниями функций FileFindFirst(), FileFindNext() и FileFindClose() вы можете ознакомиться в справке.
Код:
void OnStart() { string file_name; int i=1; //--- получение хэндла поиска в корне локальной папки long search_handle=FileFindFirst(InpFilter,file_name); //--- проверим, успешно ли отработала функция FileFindFirst() if(search_handle!=INVALID_HANDLE) { //--- в цикле проверим являются ли переданные строки именами файлов или директорий do { ResetLastError(); //--- если это файл, то функция вернет true, а если директория, то функция генерирует ошибку 5018 FileIsExist(file_name); PrintFormat("%d : %s name = %s",i,GetLastError()==5018 ? "Directory" : "File",file_name); i++; } while(FileFindNext(search_handle,file_name)); //--- закрываем хэндл поиска FileFindClose(search_handle); } else Print("Files not found!"); }
Индикатор, позволяющий определять направление тренда
CCIArrowsСемафорный сигнальный индикатор, фиксирующий моменты пробоя техническим индикатором iCCI нулевого уровня и отображающим эти моменты цветными точками
Скрипт демонстрирует пример использования функции FileCopy()
Demo_FileDeleteСкрипт демонстрирует пример использования функции FileDelete()