Einzelnen Beitrag anzeigen

VoSs2o0o

Registriert seit: 23. Jan 2024
9 Beiträge
 
#1

Besserer und einfacherer Format-Befehl (OpenSource)

  Alt 23. Jan 2024, 18:40
Ich habe mir mal die Mühe gemacht eine Lib zu entwickeln, welche der String-Interpolation schon recht nahe kommt:

Delphi-Quellcode:
NetFormat.ToString('Hello, {0}! Today is {1:ddd}, it's {1:HH:mm} now.', name, date);

// Hello, Mark! Today is Wednesday, it
's 19:40 now.
Die Variablen werden automatisch erkannt und konvertiert (automatischer Typrückschluß via Generics), so ist es nicht erforderlich IntToStr, FloatToStrF usw zu verwenden.


Hier nochmal eine Kurzerklärung zum Format. grundsätzlich orientieren sich die Spezifizierer für das Format an .Net. Deshalb weicht das Datumsformat etwas, der Rest deutlicher ab. Ich halte das aber für intuitiver als die sprintf-Konvention die Delphi übernommen hat:

Delphi-Quellcode:
// Integer werden automatisch als Fließkomma und Fließkomma als Integer formatiert, sofern erforderlich.
// C für Währung (Zahl gibt Nachkomma an)
// D für Ganzzahl (Zahl gibt führende Nullen an)
// F für Fließkomma (Zahl gibt Nachkomma an)
//
// Datum kann:
// dd = Tag, MM=Monat, yyyy=Jahr
// HH=Stunde, mm=Minute, ss=Sekunde
// es gibt weitere Möglichkeiten Siehe readme.
Hier das Repo/Download hierzu:
https://github.com/VoSs2o0o/NetFormat

Ich habe außerdem auf meine Webseite einen Artikel verfasst, wie es funktioniert und wie es aufgebaut ist:
https://www.cloud-9.de/entwicklung/d...-format-befehl
Die readme ist im Projekt:
https://github.com/VoSs2o0o/NetForma...ster/readme.md

Ich freue mich über eure Rückmeldungen, und vielleicht hilft es ja dem einen oder anderen weiter

Geändert von VoSs2o0o (27. Jan 2024 um 00:35 Uhr) Grund: Beschreibung ergänzt
  Mit Zitat antworten Zitat