Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#5

AW: IdUDPServer: Probleme mit Sonderzeichen bei read

  Alt 27. Nov 2024, 18:56
Ach ja, man mag es nicht glauben ... ich war auch vor Schreck aus allen Wolken gefallen ... aber es gibt wirklich ein SetString, welches einen PAnsiChar an einen String/UnicodeString zuweist.


Da es hier nun UTF-8 ist (was man im ersten Post ja nicht erahnen konnte),
ist hier das Problem, dass dort der PAnsiChar als ANSI angesehn wird, anstatt UTF-8.

Mit dem passenden String-Typen funktioniert aber auch das.
Delphi-Quellcode:
var
  S: UTF8String;
begin
  SetString(S, PAnsiChar(@AData[0]), length(Adata));
UTF-8 ist ja eine bestimmte ANSI-Codepage.
Somit schreibt SetString das als ANSI ByteCode da rein
und beim Zuweisen an einen String/UnicodeString (hier ans Trim) wird dieser AnsiString-Typ dann entsprechend seiner CodePage (CP_UTF8) "richtig" dekodiert.

Oder AnsiString-Variable mit Delphi-Referenz durchsuchenSetCodePage, nach dem SetString.
$2B or not $2B

Geändert von himitsu (27. Nov 2024 um 18:59 Uhr)
  Mit Zitat antworten Zitat