Ошибки, баги, вопросы - страница 628

 
stringo:
Файл юникодный или ANSI? Если последнее, то при открытии файла нужно явно прописывать флаг FILE_ANSI
даже с ANSI получается то же самое .. возвращается 0 а в массиве ерунда
 
openlive:
даже с ANSI получается то же самое .. возвращается 0 а в массиве ерунда

Извините, сразу и не приметили. Функция FileReadArray неприменима к Вашему файлу.

Организовывайте поэлементное чтение из CSV, как в четвёрке

 
а с каким файлом можно работать
 
openlive:
а с каким файлом можно работать
Посмотрите справку по функциям чтения и записи массивов в файл.
 
alexvd:
Посмотрите справку по функциям чтения и записи массивов в файл.
помогите -
двумерный т.е. функция FileReadArray с многомерными массивами не работает.. а на си++ помогите написать. помогите плиз код C++ 
 
openlive:
помогите -
двумерный т.е. функция FileReadArray с многомерными массивами не работает.. 

Кто вам это сказал?

Вы попробуйте модифицировать ваш же пример на работу с бинарным файлом и будет вам счастье. 

 

Не получается отобразить торговые уровни (CHART_SHOW_TRADE_LEVELS) на объекте-графике. Любое другое свойство изменить при этом выходит.

---

Например, зная имя объекта, получаем его идентификатор и затем меняем свойство-(а) объекта:

subchart_id=ObjectGetInteger(0,chartname,OBJPROP_CHART_ID); // получим идентификатор объекта-графика
//---
ChartSetInteger(subchart_id,CHART_SHIFT,true);
ChartSetInteger(subchart_id,CHART_SHOW_TRADE_LEVELS,true);
Отступ включается, а торговые уровни, которые на текущий момент есть на том же символе не отображаются.

--- 

В чём может быть проблема?

 
alexvd:

Кто вам это сказал?

Вы попробуйте модифицировать ваш же пример на работу с бинарным файлом и будет вам счастье. 

не работал с бинарными файлами, намекните хоть как его создать и добавить туда данные
 
openlive:
не работал с бинарными файлами, намекните хоть как его создать и добавить туда данные
К примеру
 
//zadaem ramer svechi OHLC
double o=1.0, h=1.0, l=1.0, c=1.0;
   int handle=FileOpen("databin.dat",FILE_WRITE|FILE_BIN);
   FileWriteDouble(handle,o);
   FileWriteDouble(handle,h);
   FileWriteDouble(handle,l);
   FileWriteDouble(handle,c);
   FileClose(handle);
  
//zapolnayem massiv iz bin faila  
double mas[1][4];
   int handle1=FileOpen("databin.dat",FILE_READ|FILE_BIN,';');
   int numb=FileReadArray(handle1,mas); 
   FileClose(handle1);
//result
  for (int i=0;i<1;i++){
  Print(handle,mas[i][0],mas[i][1],mas[i][2],mas[i][3]);}

Вот попробовал пример все равно выходят другие значения

2012.02.01 12:54:02  (EURUSD,H1) 11.0 1.0 1.0 1.0

почему 11 я не пойму