Einzelnen Beitrag anzeigen

Rollo62

Registriert seit: 15. Mär 2007
3.908 Beiträge
 
Delphi 12 Athens
 
#1

[Fmx, MacOs] Fehlerhafter FormatSettings.ShortDateFormat auf MacOs ?

  Alt 10. Mai 2019, 16:44
Hallo zusammen,

ich habe wieder einen seltsamen Fehler beim Speichern/Laden via MemIni-File auf Mac.

Das schent beim Speichern durch ShortDateFormat mit 'dd.mm.yy' verkürzt zu werden,
deshalb wird beim Laden ein Zeitwert verändert:
Z.B.:
aus einem Zeitwert 30.12.1899 00:02:15 wird beim Speichern 30.12.99 00:02:15
und beim Rücklesen 30.12.1999 00:02:15

Komischerweise funktioniert es auf Win32 richtig, obwohl da ja eingentlich gleich sein sollte.

Die Ursache liegt beim Format, ein schneller Workaround hier;

Delphi-Quellcode:
  ...
  LFormatSettings := TFormatSettings.Create; // := FormatSettings;
  LFormatSettings.ShortDateFormat := FormatSettings.ShortDateFormat;
  if LFormatSettings.ShortDateFormat.Length < 10 then
    LFormatSettings.ShortDateFormat := 'dd.mm.yyyy';

  FIniStor.WriteString(Section, Name, DateTimeToStr( Value, LFormatSettings )); //<-- Normalerweise nimmt das die System FormatSettings
  ...

Kann das sein das MacOs ein anderes Setting bei dem ShortDateSting als Windows hat ?
Wenn ja, warum ?

Bin leider knapp mit der Zeit, deshalb reicht mir im Moment der Workaround.
Aber wäre gut wenn ich wüsste wie das demnächst mal optimal korrigieren könnte.
  Mit Zitat antworten Zitat