FileWriteComplexFloat

Schreibt den Wert eines Parameters vom Typ complexf ab der aktuellen Position des Dateizeigers in eine Binär- oder CSV-Datei.

uint  FileWriteComplexFloat(
   int       file_handle,     // Datei-Handle
   complexf  value            // Werte zum Schreiben
   );

Parameter

file_handle

[in]  Dateideskriptor, der von der Funktion FileOpen() zurückgegeben wird.

value

[in]  Wert des Typs complexf.

Rückgabewert

Bei Erfolg gibt die Funktion die Anzahl der geschriebenen Bytes zurück. Der Dateizeiger wird um dieselbe Anzahl von Bytes verschoben.

Hinweis

Um Informationen über den Fehler zu erhalten, rufen Sie GetLastError() auf.

In eine Binärdatei werden 8 Bytes geschrieben.

In eine Text- oder CSV-Datei wird die Textdarstellung der komplexen Zahl geschrieben.

Beispiel:

//+------------------------------------------------------------------+
//|                                         TestWriteReadComplex.mq5 |
//|                                  Copyright 2026, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2026, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Startfunktion des Skriptprogramms                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   complex  complex_value=1.012345+0.0001i;
   complexf complexf_value=complexf(0.00678+0.005i);
//--- in eine CSV-Datei schreiben
   int  file_handle=FileOpen("complex.csv",FILE_CSV|FILE_WRITE|FILE_ANSI);
   uint written=FileWriteComplexDouble(file_handle,complex_value);
   Print("written ",written," bytes");
   FileWriteString(file_handle,"\t");
   written=FileWriteComplexFloat(file_handle,complexf_value);
   Print("written ",written," bytes");
   FileWriteString(file_handle,"\n");
   FileClose(file_handle);
   complex  complex_value2;
   complexf complexf_value2;
//--- aus einer CSV-Datei lesen
   file_handle=FileOpen("complex.csv",FILE_CSV|FILE_READ|FILE_ANSI);
   complex_value2=FileReadComplexDouble(file_handle);
   complexf_value2=FileReadComplexFloat(file_handle);
   FileClose(file_handle);
   Print("complex_value2=",complex_value2);
   Print("complexf_value2=",complexf_value2);
//--- in eine Binärdatei schreiben
   file_handle=FileOpen("complex.bin",FILE_BIN|FILE_WRITE);
   written=FileWriteComplexDouble(file_handle,complex_value);
   Print("\nwritten ",written," bytes");
   written=FileWriteComplexFloat(file_handle,complexf_value);
   Print("written ",written," bytes");
   FileClose(file_handle);
   complex  complex_value3;
   complexf complexf_value3;
//--- aus einer Binärdatei lesen
   file_handle=FileOpen("complex.bin",FILE_BIN|FILE_READ);
   complex_value3=FileReadComplexDouble(file_handle);
   complexf_value3=FileReadComplexFloat(file_handle);
   FileClose(file_handle);
   Print("complex_value3=",complex_value3);
   Print("complexf_value3=",complexf_value3);
  }

Ausgabe im Expertenjournal

   written 17 bytes
   written 27 bytes
   complex_value2=(1.012345,0.0001)
   complexf_value2=(0.0067799999,0.0049999999)
   
   written 16 bytes
   written 8 bytes
   complex_value3=(1.012345,0.0001)
   complexf_value3=(0.0067799999,0.0049999999)

 

Sehen Sie auch

Komplexe Zahl (complex, complexf), Reelle Typen (double, float), FileWriteFloat, FileWriteComplexDouble