我有一个Richedit,允许用户在我的应用程序中格式化和查看错误消息。
现在我需要能够将文本(无格式)导出到他们的故障票系统使用的另一个数据库。
我尝试了我能想到的所有PlainText组合,但仍然得到rtf格式。
如何获得纯文本?
要获取未格式化的文本,只需使用 RichEdit1.Text
。
TRichEdit.Text
属性来加载 RTF 格式。要正确加载 RTF,必须使用其中一个TRichEdit.Lines.LoadFrom...()
方法,并将TRichEdit.PlainText
属性设置为False。然后,您可以使用TRichEdit.Text
属性检索未格式化的文本。 - Remy Lebeau回答你直接提出的问题,Text
属性恰好是你要查找的内容。由于某种原因,它在TRichEdit
文档中没有显示,但是它从TCustomEdit
继承而来。
根据Andreas的回答之后的评论,我认为你需要执行以下操作:
RichEdit.LoadFromStream
方法并传递该流,并确保PlainText
为False
。RichEdit.Text
以获取未格式化的文本。目前,你只是将RTF作为纯文本放入控件中。你需要将它作为富文本放入控件中,这就需要用到LoadFromStream
方法。
procedure TMainForm.O1Click(Sender: TObject);
begin
if sOpenDialog1.Execute then
sRichEdit1.Lines.LoadFromFile(sOpenDialog1.FileName);
sMemo1.Text := sRichEdit1.Text;
sRichEdit1.Clear;
sRichEdit1.Text := sMemo1.Text;
保存文件有两种选择:
1. 以 .txt 格式保存,文本仍在记事本中,但所有更改只会在富文本编辑器中显示,所以完成所有更改后,您必须将文本移动到记事本中,然后从记事本中保存。
2. 以 .rtf 格式保存,直接从富文本编辑器中保存即可。
希望这可以帮到您。