Hallo,
das sieht aus wie unvollständiges RTF.
Zeichenfolgen in der Form "\345\261\273\347\221\262\343" können da schon vorkommen, es scheint aber der Header zu fehlen.
Ein bisserl was zum RTF-Format ist hier zu finden:
https://en.wikipedia.org/wiki/Rich_Text_Format
Speichere doch bitte den Text auch einmal mit
redt1.Lines.SaveToFile('Testdatei.rtf');
und schau, ob Du die Datei mit 'ner Textverarbeitung öffnen kannst und sie dort vernünftig angezeigt wird.
Und schau bitte mal mit Notepad, Hexeditor (oder so) in die Datei und prüfe, ob die Datei der Spezifikation entspricht oder den gleichen Inhalt hat, wie der Stream.
Datei und Stream müssten eigentlich mit
{\rtf beginnen und mit
} enden.
Ist dem bei Beiden nicht so, so wird von redt1 kein (vollständiges) RTF gespeichert. Prüfe dann mal bei den Eigenschaften, ob da was zu konfigurieren ist.
Eventuell fehlt hier in der Routine aber auch was:
Delphi-Quellcode:
function TfrmMain.GetRTFText: string;
var
FStream : TMemoryStream;
begin
FStream := TMemoryStream.Create;
FStream.Clear;
redt1.Lines.SaveToStream(FStream);
FStream.Position := 0; // <- fehlt das?
Result := PChar(FStream.Memory);
FStream.Free;
end;
Ansonsten helfen diehier?
http://www.delphipraxis.net/167329-t...ichern-db.html
http://stackoverflow.com/questions/4...into-trichedit