Einzelnen Beitrag anzeigen

Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#1

GetLocaleInfo() Aufruf, ist es so richtig?

  Alt 2. Apr 2018, 17:33
Hallo, ich würde mich gerne absichern ob folgender Code korrekt ist:

Delphi-Quellcode:
function ThousandSeparator : String;
var
  buf: PChar; // temp puffer
begin
  Result := '#'; // falsch initialisieren, gegebenfalls später mit einem Default-Wert bei Fehler ersetzen
  try
  buf := StrAlloc(10); // puffer eine größe zusichern
  GetLocaleInfo(
    LOCALE_SYSTEM_DEFAULT,
    LOCALE_STHOUSAND,
    buf,
    10); // GetLocaleInfo() direkt abfragen ohne die Länge vom Trennzeichen zu kennen, aber über 10 sollten es wohl nicht werden
  finally
   Result := StrPas(buf); // in einen String konvertieren
   StrDispose(buf); // speicher bereinigen
  end;
end;
Ziel soll sein das ich in einem String das/die Zeichen für's Lokale Tausender-Trennzeichen bekomme.
Oder ist es generell so falsch und es gibt aktuellere Methoden um das Zeichen (als String) zu bekommen?
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat