Funkcje daty i czasu:   TimeToStruct()

Funkcja void TimeToStruct() dokonuje konwersji wartości typu datetime do zmiennej struktury MqlDateTime . Więcej informacji można znaleźć w specyfikacji MQL4.


Przykład 1

#property strict
void OnStart()
  {
//---
   datetime date = D'2012.03.01 12:34:56';
//--- utworzenie struktury structDate typu MqlDateTime
   MqlDateTime structDate;
//--- przeniesienie date do struktury structDate
   TimeToStruct(date, structDate);

//--- kopiowanie danych ze struktury do zmiennych
   int structYear      = structDate.year;        // rok
   int structMonth     = structDate.mon;         // miesiąc
   int structDay       = structDate.day;         // dzień
   int structHours     = structDate.hour;        // godziny
   int structMinutes   = structDate.min;         // minuty
   int structSeconds   = structDate.sec;         // sekundy
   int structDayOfWeek = structDate.day_of_week; /* dzień tygodnia
                                                  0-nd, 1-pn, 2-wt
                                                  3-śr, 4-czw, 5-pt, 6-sob */

   int structDayOfYear = structDate.day_of_year; // dzień roku

//--- wyświetlić wynik
   Print("1) Data = ",TimeToString(date, TIME_DATE|TIME_MINUTES|TIME_SECONDS));
   Print("2) rok = ",structYear);
   Print("3) miesiąc = ",structMonth);
   Print("4) dzień = ",structDay);
   Print("5) godziny = ",structHours);
   Print("6) minuty = ",structMinutes);
   Print("7) sekundy = ",structSeconds);
   Print("8) dzień tygodnia = ",structDayOfWeek);
   Print("9) dzień roku = ",structDayOfYear);
  }

Rys. 1. Przykład stosowania funkcji TimeToStruct().


Jeśli trzeba przekonwertować MqlDateTime do wartości typu datetime należy zastosować funkcję StructToTime() .