将 RichEdit 格式保留为字符串?
我将一个字符串分配给我声明的自定义类型,我使用 TTreeViews Node.Data 属性读取/写入该类型。我从节点读取和写入,如下所示:
读取:RichEdit1.Lines.Text := TMyData(TreeView1.Selected.Data).MyString;
写入:TMyData(TreeView1. Selected.Data).MyString := RichEdit1.Lines.Text;
这非常适合纯字符串,我希望允许丰富格式的文本存储在字符串中,而不丢失格式。我设法通过使用 RichEdit 上的 Streams 来做到这一点,因为我使用免费软件 Zeos Lib (SQL) 保存数据库,因此出现未知令牌错误(可能来自 RTF 标签)。如何保存才不会出现错误?
更新
我已经成功地正确保存它,现在没有错误,使用Sylverdrag建议的Base64编码/解码。这对我的字符串进行编码,删除坏字符。
I am assigning a string to a custom type I have declared, which I Read/Write using the TTreeViews Node.Data property. I read and write to and from the node, something like this:
Read: RichEdit1.Lines.Text := TMyData(TreeView1.Selected.Data).MyString;
Write: TMyData(TreeView1.Selected.Data).MyString := RichEdit1.Lines.Text;
This works perfect for plain strings, I want to allow Rich Formatted text to be stored in the string, without losing the formatting. I managed to do this by using Streams on the RichEdit, because I am saving my database using the Freeware Zeos Lib (SQL) I get Unknown Token errors (likely from the RTF tags). How can I save without the errors?
UPDATE
I have managed to get it saving correctly without erroring now, using Base64 Encoding/Decoding as suggested by Sylverdrag. This encodes my strings removing the bad characters.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
查看 http://delphi.about.com/od/adptips2003/a/bltip1203_5 .htm
(我原来的答案是针对 C# 的 - 误读了你的问题)
Check out http://delphi.about.com/od/adptips2003/a/bltip1203_5.htm
(My original answer was for C# - misread your question)