C++ Builder Snippets  

TDateTime in Anzahl der Sekunden konvertieren:
 
//-----------------------------------------------------------------------
//  TDateTime-Objekt in Anzahl der Sekunden unter Berücksichtigung der
//  Millisekunden-Angabe in TDateTime konvertieren
//-----------------------------------------------------------------------
//  Wird verwendet, um die Anzahl der Sekunden zwischen zwei oder mehreren
//  Ereignissen zu bestimmen, z.B. beim Mitloggen der an der Schnittstelle
//  ankommenden Daten.
//
//  Geanuigkeit liegt bei ca. 50 ms, wird bessere Auflösung gefordert,
//  müssen die API-Funktionen 'QueryPerformanceFrequency' und
//  'QueryPerformanceCounter' verwendet werden.
//-----------------------------------------------------------------------


//-----------------------------------------------------------------------
//  Konvertiert TDateTime-Objekt in Anzahl der Sekunden
//-----------------------------------------------------------------------
double DateTimeToSecStr(TDateTime dtSource)
{
  unsigned short usH, usM, usS, usMS;
  dtSource.DecodeTime(&usH, &usM, &usS, &usMS);
  return usS + usM * 60.0 + usH * 3600.0 +
    int(dtSource) * 86400.0 + usMS/1000.0;
}

//-----------------------------------------------------------------------
//  Konvertiert TDateTime-Objekt in Anzahl der Sekunden
//  (Der zurückgegebene String wird auf 3 Nachkommastellen formatiert)
//-----------------------------------------------------------------------
AnsiString DateTimeToSecStr(TDateTime dtSource)
{
  unsigned short usH, usM, usS, usMS;
  dtSource.DecodeTime(&usH, &usM, &usS, &usMS);
  double ldRetVal = usS + usM * 60.0 + usH * 3600.0 +
    int(dtSource) * 86400.0 + usMS/1000.0;
  return FloatToStrF(ldRetVal, ffGeneral, 153);
}



© '99-2000 by S. Kreutzmann