Hallo zusammen, einen schönen 4. Advent wünsche ich,
ich versuche seit längerem für eine kleine Notizenanwendung den Text der Notiz formatiert (also fett, kursiv etc.) in einer PostgreSQL-Datenbank zu speichern, erhalte jedoch beim Wiederauslesen nur Zeichensalat.
Das Feld in der Datenbank ist vom Typ bytea. Wenn ich mit der Methode
Delphi-Quellcode:
function TfrmMain.GetRTFText: string;
var
FStream : TMemoryStream;
begin
FStream := TMemoryStream.Create;
FStream.Clear;
redt1.Lines.SaveToStream(FStream);
Result := PChar(FStream.Memory);
FStream.Free;
end;
den Text als Stream in der Datenbank speichere, erhalte ich
Zitat:
"\345\261\273\347\221\262\343\205\246\346\205\234\ 347\215\256\345\261\251\346\225\244\346\231\246\34 7\254\260\346\231\234\346\271\257\347\221\264\346\ 261\242\345\261\273\343\201\246\346\231\234\346\24 5\256\345\261\254\346\215\246\346\205\250\347\215\ 262\347 (...)"
Beim Wiederauslesen mit
Delphi-Quellcode:
procedure TfrmMain.SetRTFText(RichRTFText: string);
var
FStream : TMemoryStream;
begin
FStream := TMemoryStream.Create;
FStream.Clear;
FStream.WriteBuffer(RichRTFText[1], Length(RichRTFText));
FStream.Position := 0;
redt1.Lines.LoadFromStream(FStream);
FStream.Free;
end;
erhalte ich nur wirren Zeichensalat.
Hat vielleicht jemand einen Tip, wo ich ansetzen kann?
Gruß
Frank
"Ich habe Dinge gesehen, die ihr Menschen niemals glauben würdet. Gigantische Schiffe, die brannten, draußen vor der Schulter des Orion" - Roy Batty