Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: UTF8ToAnsi (gemodded) und ANSI/UTF8 gemischt

  Alt 7. Apr 2005, 17:08
Nachtrag:
Im Grundegenommen kannst du deine "umgebaute" Prozedur wegschmeißen ... da sie ja jetzt Fehlerhaft ist.


Aber wenn du nicht nachschauen kannst, was genau ankommen, also ob mal Ansi oder UTF ankommt, kannst du ja einen "nicht" so ganz guten Weg versuchen.

Wie gesagt, perfekt ist das nicht.
Es wird halt versucht den String von UTF8 nach Ansi umzuwandeln
und bei einem Fehler, also wenn der String kein UTF8-String ist, dann wird er als AnsiString verwendet.
Delphi-Quellcode:
SIn := ... // die empfangenen Daten

Try
  // von UTF8 nach ANSI umwandeln
  SOut := UTF8ToAnsi(SIn);
Except
  // und bei Fehler die Daten so übernehmen
  SOut := SIn;
End;

// SOut enthält jetzt (vermutlich) die Daten im ANSI-Format
Also versuche lieber rauszubekommtn was ankommt und dann dementsprechend diese Daten dann zu verwenden.
Delphi-Quellcode:
S := {empfangene Daten}
If {Datenformat der empfangenen Daten = UTF8} Then
  S := UTF8ToAnsi(S);

// Hier hätte man dann S im ANSI-Format (wenn nur ANSI und UTF8 möglich ist)
PS: in delphi wird standardmäßig das ANSI-Format verwendet,
weßhalb derzeit der String und der AnsiString genau das Selbe darstellen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat