Fehler, Irrtümer, Fragen - Seite 2057

 

Ich habe bereits einen Fehlerbericht erstellt, aber falls es jemanden interessiert...

Roffild:
Проблема даже с чтением 1000 байт. Может на следующей неделе исправят, а то не получается сейчас читать бинарный файл больше 2гб.

void OnStart()
  {
   double data[];
   int hfile = FileOpen("bytes2147483640.bin", FILE_BIN);   
   Print("read = ", FileReadArray(hfile, data, 0, 1000));
   Print("size = ", ArraySize(data));
   FileClose(hfile);
   ArrayResize(data, 0);
   hfile = FileOpen("bytes2147483649.bin", FILE_BIN);   
   Print("read = ", FileReadArray(hfile, data, 0, 1000)); // read = 4026531841
   Print("size = ", ArraySize(data)); // size = 0
   Print("error = ", GetLastError()); // error = 0
   FileClose(hfile);
  }
Total Commander kann eine große Datei (ich habe eine mkv-Datei genommen) in Dateien mit der richtigen Größe aufteilen. Nur die Dateigröße ist für die Prüfung wichtig, nicht der Inhalt der Datei.
 

Hallo.

Versuchen Sie, den Bot auf einem monatlichen Zeitrahmen zu testen, aber der Tester gibt nicht die Geschichte für sie (0 Bars). Ein erneutes Laden des Angebotsarchivs hilft nicht. Ich weiß etwas nicht? :)

 
Roffild:

Ich habe bereits einen Fehlerbericht erstellt, aber falls es jemanden interessiert...

Total Commander kann große Dateien (ich habe einige mkv-Dateien genommen) in Dateien der gewünschten Größe aufteilen. Es kommt nur auf die Größe der Datei an, nicht auf den Inhalt.

Ich verwende FileLoad.

Документация по MQL5: Файловые операции / FileLoad
Документация по MQL5: Файловые операции / FileLoad
  • www.mql5.com
//|                                                Demo_FileLoad.mq5 | //|                        Copyright 2016, MetaQuotes Software Corp. | //|                                             https://www.mql5.com | //| Script program start function                                    |...
 
Roffild:

Ich habe bereits einen Fehlerbericht eingereicht, aber falls jemand daran interessiert ist...

Es ist wahrscheinlich kein Fehler, aber... sagen wir eine Einschränkung. Ich vermute, dass es nur alte 32-Bit-Dateioperationen verwendet.

 
Комбинатор:

Es ist wahrscheinlich kein Fehler, aber... sagen wir eine Einschränkung. Ich vermute, dass es nur alte 32-Bit-Dateioperationen verwendet.

Wenn das Lesen nach INT_MAX-Bytes unterbrochen wurde, lässt sich das erklären, aber es wird nicht einmal der Anfang der Datei gelesen...

 
ArrayPrint-Fehler
void OnStart()
{  
  MqlParam Params[] = {{TYPE_STRING}};

  ArrayPrint(Params);
  Print(Params[0].type);
}


Ergebnis

    [type] [integer_value] [double_value] [string_value]
[0]    ...               0        0.00000 null          
14
 
fxsaber:
ArrayPrint-Fehler

Dies ist das erste Mal, dass ich eine problematische Nachricht über ArrayPrint gesehen habe, obwohl dies nicht der einzige Fehler ist. Dies bestätigt einmal mehr, dass ArrayPrint nicht wirklich gefragt ist, während ToolsExperts gerade deswegen eine unbequeme Monospace-Schriftart entwickelt hat, die die nutzbare Menge an gedruckter Information um bis zu 40% reduziert.

 
Комбинатор:

Es ist wahrscheinlich kein Fehler, aber... sagen wir eine Einschränkung. Ich vermute, dass es nur alte 32-Bit-Dateioperationen verwendet.

Es ist also in Ordnung: 3Gb-Datei erstellen -> schreiben -> lesen

#define  COMMA  ,
#define  MACRO( flag, value, file, function, comma ) \
{ \
    long offset = long(INT_MAX)/2*3; \
    int h = FileOpen( file, flag | FILE_COMMON | FILE_BIN ); \
    Print( StringFormat( "%d:%d", h, FileSeek( h, offset, SEEK_SET )) \
         + StringFormat(   ":%d",    function( h comma value, sizeof(int))) \
         + StringFormat(   ":%dGb",  FileSize( h )/1024/1024/1024 )); \
    FileClose( h ); \
}
void OnStart()
{
    MACRO( FILE_WRITE, 33, "3Gb.bin", FileWriteInteger, COMMA ) //записали число 33 в конец 3Gb файла
    MACRO( FILE_READ,    , "3Gb.bin", FileReadInteger,        ) //прочитали
}

Ergebnis: 1:1:33:3Gb

 
A100:

haben eine unbequeme Schriftart mit einfacher Breite erstellt, die den Nutzen der Ausgabe um bis zu 40 % verringert.

Im Gegenteil, ich mag Monospace, weil ich es seit dem Erscheinen von ArrayPrint häufig verwende.

 
fxsaber:

Ich habe ArrayPrint seit seiner Einführung ausgiebig genutzt.

Wäre dies der Fall, wären dieser und andere Fehler, die sich auch in Form von Punkten äußern und die Verwendung sinnlos machen, schon längst erkannt worden.

MetaEditor build 1467
MetaEditor build 1467
  • 2016.11.10
  • www.mql5.com
Объясните, почему вот этот текст, отформатированный исключительно пробелами, нет ни одного -tab-,: после применения стилизатора, преобразуется в та...