закоментил FileSeek и сделал закрытие файла после ифа при правде
боль как рукой сняло.
попробуй создать отдельную переменную long и ей присвоить значение stringtointeger, посмотри что будет выдавать.
Alexandr Bryzgalov:
вернее все правильно отрабатывает, но почему StringToInteger(s0)); выдает 0 ?
вернее все правильно отрабатывает, но почему StringToInteger(s0)); выдает 0 ?
При чтении из csv-файла длину строки также указывать не надо, будет прочитана строка от текущего положения до ближайшего разделителя либо до признака конца текстовой строки.
Sergey Chalyshev:
При чтении из csv-файла длину строки также указывать не надо, будет прочитана строка от текущего положения до ближайшего разделителя либо до признака конца текстовой строки.
да, спасибо, это от отчаяния поставил, в первоначальном варианте длинна строки не указывалась
рабочий вариант выглядит так:
int handle; handle=FileOpen(FileName,FILE_READ|FILE_CSV|FILE_SHARE_WRITE|FILE_SHARE_READ|FILE_COMMON,";"); //Print(handle); if(handle==(-1)) { Print(MasterAccount," no connection to the server, the last error: ",_LastError); ResetLastError(); return(-1);//continue; } //FileSeek(handle,0,SEEK_SET); string s0=FileReadString(handle); if(StringToInteger(s0)!=107){FileClose(handle);Print("Получен некорректный файл!");return(-1);} string s1=FileReadString(handle);
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь