如何将字符串转换为从数据库中读取的RTF格式? 读取时,在richedit中出现带有标记的字符串:/ par {ansistring .......
我尝试使用此代码,但结果是一样的。
rtfString:= set1.fieldbyname('corpo_rtf').asansistring;
stream := TMemoryStream.Create;
stream.Clear;
stream.Write(PAnsiChar(rtfString)^, Length(rtfString));
stream.Position := 0;
corpo.PlainText := False;
corpo.Lines.LoadFromStream(stream);
stream.Free;
答案 0 :(得分:1)
如果内存流的内容是有效的RTF,则代码可以正常工作。因此,情况并非如此。
您需要深入了解内存流的实际内容。将其写入扩展名为.rtf的文本文件。尝试使用Wordpad加载它。走着瞧吧。您应该看到与Delphi应用程序显示相同的内容。
那么,这可能会出错?一些可能的原因包括:
rtfString
的类型为AnsiString
。是吗?