FileWriteComplexFloat

Записывает в бинарный или csv-файл значение параметра типа complexf с текущего положения файлового указателя.

uint  FileWriteComplexFloat(
   int       file_handle,     // handle файла
   complexf  value            // значения для записи
   );

Параметры

file_handle

[in]  Файловый описатель, возвращаемый функцией FileOpen().

value

[in]  Значение типа complexf.

Возвращаемое значение

В случае удачи функция возвращает количество записанных байт. Файловый указатель перемещается на это же количество байт.

Примечание

Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().

В бинарный файл записывается 8 байт.

В текстовый или csv-файл записывается текстовое представление комплексного числа.

Пример:

//+------------------------------------------------------------------+
//|                                         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"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   complex  complex_value=1.012345+0.0001i;
   complexf complexf_value=complexf(0.00678+0.005i);
//--- запись в csv-файл
   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;
//--- чтение из csv-файла
   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);
//--- запись в бинарный файл
   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;
//--- чтение из бинарного файла
   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);
  }

Вывод в журнал экспертов

   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)

 

Смотри также

Комплексное число (complex, complexf), Вещественные типы (double, float), FileWriteFloat, FileWriteComplexDouble