Считывание текста с блокнота

 

Привет всем! Тут такое дело, есть файл блокнота с цифрой 1 или 0 внутри, надо как-то программно через mql4 выяснить какая же цифра там указана... Буду очень благодарен за подсказки (не путать со сказками:))! 

Хотя бы скажите реально ли это...

 
Maksim Neimerik:

Привет всем! Тут такое дело, есть файл блокнота с цифрой 1 или 0 внутри, надо как-то программно через mql4 выяснить какая же цифра там указана... Буду очень благодарен за подсказки (не путать со сказками:))! 

Хотя бы скажите реально ли это...

Читайте файл.

Документация по MQL5: Файловые операции
Документация по MQL5: Файловые операции
  • www.mql5.com
Из соображений безопасности в языке MQL5 строго контролируется работа с файлами. Файлы, с которыми проводятся файловые операции средствами языка MQL5, не могут находиться за пределами файловой "песочницы". общая папка всех установленных на компьютере терминалов  – обычно расположена в каталоге C:\Documents and Settings\All Users\Application...
 
Artyom Trishkin:

Читайте файл.

Спасибо!

 

Сделал вот так:

   string terminal_data_path=TerminalInfoString(TERMINAL_DATA_PATH); 
   string filename=terminal_data_path+"\\MQL4\\Files\\123.txt";
   int handle=FileOpen(filename,FILE_READ|FILE_TXT);

но хендл почему-то -1... что не так?

 
Maksim Neimerik:

Сделал вот так:

но хендл почему-то -1... что не так?

Не нужно указывать дополнительный путь. Файловые операции возможны только в песочнице - папке MQL4\Files. Поэтому достаточно указать только имя файла в этой папке.

 
Ihor Herasko:

Не нужно указывать дополнительный путь. Файловые операции возможны только в песочнице - папке MQL4\Files. Поэтому достаточно указать только имя файла в этой папке.

то есть так?:

   int handle=FileOpen("123.txt",FILE_READ|FILE_TXT);
 
все равно -1...
 
Maksim Neimerik:
все равно -1...

А файл там есть?

Не забывайте, что для тестера своя папка с файлами.

 
Еще один момент: если писать так:
   int handle=FileOpen("1234",FILE_READ|FILE_WRITE);
то при отсутствии файла с таким именем должен создаваться новый, но он не создается...
 
Alexey Viktorov:

А файл там есть?

Не забывайте, что для тестера своя папка с файлами.

точно!, папка то не та была!

 

Хорошо, с этим разобрались а как быть дальше?:

   int X=FileReadInteger(handle,INT_VALUE); 

у меня Х получается 0, но я не могу понять правильно ли это... что должна выдать функция FileReadInteger()?

в справке как-то сложно (для меня лично) описано, не могу ничего понять...
Причина обращения: