Ich versuche gerade einen String "12:05:20.160" in einen TDateTime umzuwandeln und nutze dazu die Funktion StrToTime. Diese löst jedoch eine
Exception aus und meinte der String wäre keine gültige Zeit.
Ich habe schon versucht mit GetLocaleFormatSettings() die aktuellen Einstellungen zu laden und anzupassen, jedoch ohne erfolg.
Delphi-Quellcode:
var
glFmtSet: TFormatSettings;
Date: TDateTime;
begin
GetLocaleFormatSettings(LOCALE_SYSTEM_DEFAULT, glFmtSet);
glFmtSet.TimeSeparator := '
:';
glFmtSet.ShortTimeFormat := '
hh:nn:ss';
glFmtSet.LongTimeFormat := '
hh:nn:ss.zzz';
Date := StrToTime('
12:05:20.160');
//Exception wird ausgelöst -> "Keine gültige Zeit"
Bei meiner Suche im Netz habe ich irgendwas gelesen davon das man nicht GetLocaleFormatSettings verwenden soll sondern TFormatSettings.Create, jedoch geht das mit Delphi 2009 nicht.
Ich hoffe es hat jemand einen Tipp ansonsten werde ich den String wohl zerlegen müssen und ihn mit EncodeTime() umwandeln.