Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: IdPOP3, UTF-8 Charset, Umlaute äöü

  Alt 29. Apr 2009, 18:49
war am Ende also einfacher, als es aussah


Ich würde den Funktionsparametern noch ein CONST verpassen,
denn vorallem WideString hat keine Referenzzählung und ohne würde für den Parameter eine eigene Kopie angelegt.
Delphi-Quellcode:
function ConvertQuotedPrintable ( const AText: String ) : String;

function ConvertUTF8( const AText : WideString ) : WideString;



oder alles in Kurz
Delphi-Quellcode:
uses ..., IdCoderQuotedPrintable, JclUnicode;

var sBody : WideString;

sBody := IdMessage.Body.Text;
if Pos( 'quoted-printable', IdMessage.ContentTransferEncoding ) > 0 then
  with TIdDecoderQuotedPrintable.Create(nil) do
    try
      sBody := DecodeToString(sBody);
    finally
      Free;
    end;
if Pos( 'utf-8', IdMessage.ContentType ) > 0 then
 sBody := UTF8ToWideString(sBody);
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat