AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi 11 Alexandria ist ONLINE!

Ein Thema von wjjw · begonnen am 9. Sep 2021 · letzter Beitrag vom 1. Okt 2021
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.756 Beiträge
 
Delphi 12 Athens
 
#1

AW: Delphi 11 Alexandria ist ONLINE!

  Alt 20. Sep 2021, 09:59
Das war aber auch schon immer falsch und hätte so oder so geändert werden sollen, auch wenn es vielleicht mal funktioniert hat.
Genau!

Die neue Implementierung kann jetzt halt auch Monatsnamen bzw. -abkürzungen erkennen. Früher waren nur Zahlen erlaubt.

Im Gegensatz zu dem recht einfachen GetDateOrder aus Delphi 7
Delphi-Quellcode:
function GetDateOrder(const DateFormat: string): TDateOrder;
var
  I: Integer;
begin
  Result := doMDY;
  I := 1;
  while I <= Length(DateFormat) do
  begin
    case Chr(Ord(DateFormat[I]) and $DF) of
      'E': Result := doYMD;
      'Y': Result := doYMD;
      'M': Result := doMDY;
      'D': Result := doDMY;
    else
      Inc(I);
      Continue;
    end;
    Exit;
  end;
  Result := doMDY;
end;
ist das aktuelle GetDateSequence deutlich komplexer und achtet eben auch auf den Slash '/' als Datumstrenner.
Delphi-Quellcode:
      case PrevChar of
      'Y', 'y': Part := dpYear;
      'M', 'm': Part := dpMonth;
      'D', 'd': Part := dpDay;
      '/': Part := dpSep;
      'G', 'g': Part := dpEraName;
      'E', 'e': Part := dpYearCurEra;
      ' ', #0: Part := dpNone;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
win568

Registriert seit: 8. Sep 2008
134 Beiträge
 
#2

AW: Delphi 11 Alexandria ist ONLINE!

  Alt 20. Sep 2021, 10:44
Hi

Wäre die Erweiterung:

'/', '.': Part := dpSep;

gewesen, hätte es eine Menge Arbeit erspart und abwärtskompatibel gewesen.
So müssen wir nun nicht nur unsere Sourcen anpassen, sondern auch eine Menge die
Hersteller der Fremdsourcen kontaktieren, die von Ihrem Glück noch nichts wissen.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.756 Beiträge
 
Delphi 12 Athens
 
#3

AW: Delphi 11 Alexandria ist ONLINE!

  Alt 20. Sep 2021, 11:49
Wäre die Erweiterung:

'/', '.': Part := dpSep;
Für Deutsch wäre das vielleicht passend gewesen, aber für andere Länder bräuchte es vielleicht einen Bindestrich, ein Komma oder ein Leerzeichen. Außerdem war der Slash an der Stelle schon immer vorgesehen, es wurde nur nicht kontrolliert.

Es hat auch ganz konkrete Auswirkungen, wenn man in Datumsformaten nicht den Slash verwendet. Folgender Code sollte das Datum im ersten Fall mit einem Punkt trennen. Dann wechseln wir den DateSeparator auf einen Bindestrich, was zunächst auch funktioniert, aber bei dem ShortDateFormat mit dem Punkt eben nicht.
Delphi-Quellcode:
var
  FmtSettings: TFormatSettings;
begin
  try
    FmtSettings := TFormatSettings.Create('de-DE');
    Writeln(DateTimeToStr(Now, FmtSettings));
    FmtSettings.DateSeparator := '-';
    Writeln(DateTimeToStr(Now, FmtSettings));
    FmtSettings.ShortDateFormat := 'dd.mm.yyyy';
    Writeln(DateTimeToStr(Now, FmtSettings));
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
  Readln;
end.
Ich warte aber schon länger auf einen Off-Topic Einwurf...
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.513 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Delphi 11 Alexandria ist ONLINE!

  Alt 21. Sep 2021, 06:09
Och, die Mods betrachten diese ... is da Topics eh nur als Mülleimer. Der Thread war doch seit der zweiten Seite Offtopic. Es geht hier doch nicht meist nicht darum dass es nun online ist, sondern um Probleme und sonstiges Zeug.
Ich bedanke mit bei jedem der hier einen Thread startet auch wenn es um 11 geht.
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Delphi 11 Alexandria ist ONLINE!

  Alt 21. Sep 2021, 07:18
"Mülleimer" passt nicht ganz, aber zu jedem Release gibt es Gesprächsbedarf und solche Sammelthemen fischen das ganz gut weg.
In der englischen DP gibt es derzeit ein ähnliches Thema.

Diese Sammelbecken sind nicht ideal, aber in der Praxis einfach ein adäquates Mittel.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz