Запись текста в файл

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Eltar007
41
Eltar007  

Подскажите пожалуйста как можно записать данные в текстовый файл из индикатора. Мне нужно чтобы сигнал, который записывает индикатор в журнал дублировался в отдельный файл.

Нашел описание документации, но при запуске куска кода он почему-то не работает - World Forex Live пишет, что не открывается файл. Что нужно исправить в коде, чтобы он запустился и выполнился?

#property copyright "Copyright 2013, MetaQuotes Software Corp." 
#property link      "https://www.mql5.com" 
#property version   "1.00" 
//--- покажем окно входных параметров при запуске скрипта 
#property script_show_inputs 
//--- параметры для записи данных в файл 
input string             InpFileName="TEXT.csv";  // имя файла 
input string             InpDirectoryName="Data"; // имя директории 
input string             Text="TEXT";

void OnStart() 
  { 
//--- откроем файл для записи значений индикатора (если его нет, то создастся автоматически) 
   int file_handle=FileOpen(InpDirectoryName+"//"+InpFileName,FILE_READ|FILE_WRITE|FILE_CSV); 
   if(file_handle!=INVALID_HANDLE) 
     { 
      PrintFormat("Файл %s открыт для записи",InpFileName); 
      PrintFormat("Путь к файлу: %s\\Files\\",TerminalInfoString(TERMINAL_DATA_PATH)); 
      //--- сначала запишем количество сигналов 
      FileWrite(file_handle,Text); 
      //--- закрываем файл 
      FileClose(file_handle); 
      PrintFormat("Данные записаны, файл %s закрыт",InpFileName); 
     } 
   else 
      PrintFormat("Не удалось открыть файл %s, Код ошибки = %d",InpFileName,GetLastError()); 
        }
Automatischer Handel und Strategietests
Automatischer Handel und Strategietests
  • www.mql5.com
MQL5: eine Sprache von Handelsstrategien, eingebaut in die Handelsplattform MetaTrader 5, mit der man eigene Handelsroboter, technische Indikatoren, Skripte und Funktionsbibliotheken
Mikhail Dovbakh
6956
Mikhail Dovbakh  

Все работает.  

Это скрипт.

что у вас в логе?

Eltar007
41
Eltar007  
Mikhail Dovbakh:

Все работает.  

Это скрипт.

что у вас в логе?


Спасибо! Я при создании кода выбрал вместо Скрипта Индикатор. Потому у меня в логе была ошибка открытия файла индикатора. Создал новый скрипт, вставил код, все заработало.

Теперь хотел бы этот код вставить в уже готовый код индикатора для того, чтобы в момент когда сигналит индикатор аудио файлом и делает запись в журнал он делал эту запись еще и в отдельный файл. У меня получилось вот такое счастье, которое перестало отрисовывать сигналы на графике... Гляньте пожалуйста профессиональным глазом, если возможно, что там может быть за ошибка. Я вставку с записью в файл пометил как ВСТАВКА. Так же прописал в начале переменные для записи данных в файл.

Файлы:
Mikhail Dovbakh
6956
Mikhail Dovbakh  

Можно и так.
Но если вы хотите дозаписывать, то нужно спозиционироваться в конец файла.

И вывод на печать информации о открытии и закрытии файла мусорит журнал. Хорошо, что событие записи новой мессаги довольно редкое.)
Обычно открывают файл при Инициализации, а закрывают - при Деинициализации.

Файлы:
Eltar007
41
Eltar007  
Mikhail Dovbakh:

Можно и так.
Но если вы хотите дозаписывать, то нужно спозиционироваться в конец файла.

И вывод на печать информации о открытии и закрытии файла мусорит журнал. Хорошо, что событие записи новой мессаги довольно редкое.)
Обычно открывают файл при Инициализации, а закрывают - при Деинициализации.


Спасибо большое! Очень помогли!

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий