Einzelnen Beitrag anzeigen

Benutzerbild von FBrust
FBrust

Registriert seit: 4. Okt 2002
Ort: Saarbrücken
654 Beiträge
 
Delphi 10.4 Sydney
 
#1

Formatierten Text in PostgreSQL 9 speichern

  Alt 20. Dez 2015, 11:11
Datenbank: PostgreSQL • Version: 9.4 • Zugriff über: Zeos
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

Geändert von FBrust (20. Dez 2015 um 11:15 Uhr)
  Mit Zitat antworten Zitat