Unit für ISO 3166-2 zum Übersetzen von Ländercodes

Zur Vorstellung von Komponenten und Units für Lazarus
Antworten
monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Unit für ISO 3166-2 zum Übersetzen von Ländercodes

Beitrag von monta »

Hallo,

es ist keine wirkliche Herausforderung, dass ganze zu schreiben aber es ist nervige Tipp- und Sucharbeit. Daher findet Ihr hier eine Unit, die Länderbezeichnungen in 2-stellige ISO-Codes (ISO 3166-2) übersetzt oder aus vorhandenen ISO-Codes wieder Ländernamen erzeugt.

Vielleicht ist es für den ein oder anderen ja nützlich. Unterstützt werden aktuell Deutsch, Englisch, Spanisch und Französisch.

Die vorhandenen Funktionen sollten selbsterklärend sein:

Code: Alles auswählen

type
  TStatesLanguage = (slDE, slEN, slES, slFR);

//...

function CountryToISO(const SearchCountry: string;
  const SearchLanguage: TStatesLanguage): string;
  
function ISOToCountry(const SearchISO: string;
  const SearchLanguage: TStatesLanguage): string;
SearchISO bzw. SearchCountry enthalten jeweils entweder den Ländernamen oder den gegebenen ISO-Code.

SearchLanguage gibt an, in welcher Sprache der gegebene Namen gesucht werden soll bzw. in welcher Sprache der Ländername zum übergebenen ISO-Code ausgegeben wird.

(Und ehe es jemand anmerkt, es in eine DB oder eine Konfigurationsdatei zu packen kann natürlich viel sinnvoller sein, da besteht gar kein Zweifel. In meinem Anwendungsfall ging es aber darum, es mal "schnell" in eine Anwendung zu packen, ohne zusätzliche Dateien mitzuführen)

monta
Dateianhänge
unit_isocountrycodes.pas
(27.43 KiB) 168-mal heruntergeladen
Johannes

Antworten