MetaTrader 5 herunterladen

Datetime US-Format

Einloggen oder registrieren, um einen Kommentar zu schreiben
TradingMike
27
TradingMike  

Hallo,

ich habe einen String timeRel, der aus einer CSV-Datei kommt "09/18/2016 00:00:00".

Der String wird über den Konstruktor an die Variable übergeben:

CFtime::CFtime(datetime timeRel ,string name)
  {
   m_time=timeRel;
   m_name=name;
   }

Allerdings hat die m_time dann den Wert: 2017.06.09 00:00:00

Was mache ich falsch? Strings der Form "19.9.2016 00:00:00" werden richtig ausgewertet.

Vielen Dank,

Mike

Christian
2060
Christian  

Hallo , 

 

du musst den String aus der CSV Datei zerlegen und neu zusammen fügen.

Dann an die datetime übergeben.

 

hier ein weg ...Properties.DateTimeInfo.DailyStart ist ein String in dem die Urzeit eingegeben wird "20:25:11" z.b.

 

void CountStartEndTime()
{
   datetime AnchorTime = 0;
   int OneDay = 86400;
   if (DateTimeType == DTTLocalTime)
   {
      Properties.DateTimeInfo.Current = TimeLocal();
   }
   else if (DateTimeType == DTTServerTime)
   {
      Properties.DateTimeInfo.Current = TimeCurrent();
   }
   else if (DateTimeType == DTTGMTTime)
   {
      Properties.DateTimeInfo.Current = TimeGMT();
   }
   AnchorTime = Properties.DateTimeInfo.Current;
   Properties.DateTimeInfo.DailyStart = StringToTime(IntegerToString(TimeYear(AnchorTime)) + "." + IntegerToString(TimeMonth(AnchorTime)) + "." + IntegerToString(TimeDay(AnchorTime)) + " " + DailyStartTime);
   
   Properties.DateTimeInfo.DailyStop = StringToTime(IntegerToString(TimeYear(AnchorTime)) + "." + IntegerToString(TimeMonth(AnchorTime)) + "." + IntegerToString(TimeDay(AnchorTime)) + " " + DailyStopTime);
   if (Properties.DateTimeInfo.DailyStop <= Properties.DateTimeInfo.DailyStart && Properties.DateTimeInfo.DailyStop <= Properties.DateTimeInfo.Current)
      Properties.DateTimeInfo.DailyStop += OneDay; //adds 1 day.
}
TradingMike
27
TradingMike  
Christian:

Hallo , 

 

du musst den String aus der CSV Datei zerlegen und neu zusammen fügen.

Dann an die datetime übergeben.

 

hier ein weg ...Properties.DateTimeInfo.DailyStart ist ein String in dem die Urzeit eingegeben wird "20:25:11" z.b.

 

Hallo Christian,

vielen Dank,  ja das würde gehen.

 Ich habe mal die csv verändert.
 Im Format dd.mm.yyyy hh:mm:ss wird der String richtig zum datetime Typ konvertiert. 

Grüße, 
Mike 
Christian
2060
Christian  
TradingMike:
Hallo Christian,

vielen Dank,  ja das würde gehen.

 Ich habe mal die csv verändert.
 Im Format dd.mm.yyyy hh:mm:ss wird der String richtig zum datetime Typ konvertiert. 

Grüße, 
Mike 
Hier noch schnell ein passender Artikel rund um alles was mit Zeit und Datum.....https://www.mql5.com/de/articles/599
Einloggen oder registrieren, um einen Kommentar zu schreiben