Сохранение и чтение CSV с любого места

 
Подскажите, как можно реализовать сохранение и чтение CSV файла в указанное мною место, а не в папку Files самого MT5 или же при использовании флага FILE_COMMON в общую папку?
 

поиск

Можно проще - функцией Win API скопировать файл, а дальше через MQL с ним работать. 
 
Dmitry Fedoseev:

поиск

Можно проще - функцией Win API скопировать файл, а дальше через MQL с ним работать

Создать через win api можно, скопировать тоже. Но как потом с ним работать средствами MQL, я чего-то не знаю?

 
Alexey Volchanskiy:

Создать через win api можно, скопировать тоже. Но как потом с ним работать средствами MQL, я чего-то не знаю?


Ну не знаю... https://www.mql5.com/ru/docs/files

Документация по MQL5: Файловые операции
Документация по MQL5: Файловые операции
  • www.mql5.com
Файловые операции - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

MQL же может только работать с папкой files либо common. 


Существует два каталога (с подкаталогами), в которых могут располагаться рабочие файлы:

  • папка_данных_терминала\MQL5\FILES\ (выберите для просмотра в терминале пункт меню "Файл"-"Открыть каталог данных");
  • общая папка всех установленных на компьютере терминалов  – обычно расположена в каталоге C:\Documents and Settings\All Users\Application Data\MetaQuotes\Terminal\Common\Files.

Программным путем можно получить наименования этих каталогов с помощью функции TerminalInfoString(), используя перечисление ENUM_TERMINAL_INFO_STRING:

//--- Папка, в которой хранятся данные терминала 
   string terminal_data_path=TerminalInfoString(TERMINAL_DATA_PATH); 
//--- Общая папка всех клиентских терминалов 
   string common_data_path=TerminalInfoString(TERMINAL_COMMONDATA_PATH);

Работа с файлами из других каталогов пресекается.


Поэтому стандартными методами нельзя.

 
Alexey Volchanskiy:

Создать через win api можно, скопировать тоже. Но как потом с ним работать средствами MQL, я чего-то не знаю?


К себе в папку терминала скопировать, там где можно применять функции mql

 
Для копирования в "песочницу" MQL5 можно применять WinAPI функцию CopyFileW. А дальше уже стандартными файловыми функциями MQL5 работать с файлом. После обработки снова применить CopyFileW
 
Почему именно csv?  Он ужасно неудобен для чтения
 
Dmitry Fedoseev:

Ну не знаю... https://www.mql5.com/ru/docs/files


ТС спрашивал о работе вне песочницы - "как можно реализовать сохранение и чтение CSV файла в указанное мною место, а не в папку Files самого MT5"

добавлено:  читаю комменты и поражаюсь, люди как будто слепые. Я в курсе, что большинство людей не способно понять смысл фразы длиной более 5 слов, но тут...

 
Уже понимался данный вопрос. Достаточно сделать линк на внешнюю папку внутри папки Files. Поищите mklink (команда windows).
 
Stanislav Korotky:
Уже понимался данный вопрос. Достаточно сделать линк на внешнюю папку внутри папки Files. Поищите mklink (команда windows).

а можно по-подробнее пожалуйста?