在Delphi中,RichEdit默认可以保存的格式是富文本格式。其中的文字大小、颜色等信息都可以保存下来。
RichEdit有一PlainText属性,此属性值默认为False,存储时使用带格式的结构。若设置为True,则仅存储内容,格式信息将被舍弃。
如果需要保存的话,直接调用SaveToFile函数,给定文件名称参数,即可保存文档。给定的文件名称中与扩展名无关。若PlainText属性为False,则写入文件时包含格式信息,若为True,则仅写入文件文字内容。
建议使用RTF作为文件的扩展名,这样保存的文档可以直接在Word或WPS中打开。
带格式写入TXT文件,再打开TXT文件后,格式信息也可以看得到,如下所示:
{\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\fnil\fcharset134 \'cb\'ce\'cc\'e5;}}
{\colortbl ;\red0\green128\blue0;\red0\green0\blue255;\red255\green0\blue0;}
\viewkind4\uc1\pard\cf1\lang2052\f0\fs18 [2015-12-14 14:43:51] 192.168.1.5:5663 \'d2\'d1\'b6\'cf\'bf\'aa\cf2
\par [2015-12-14 14:43:51] 192.168.1.5:5663 \'d2\'d1\'c1\'ac\'bd\'d3\cf1
\par [2015-12-14 14:43:50] 192.168.1.5:5662 \'d2\'d1\'b6\'cf\'bf\'aa\cf2
\par [2015-12-14 14:43:49] 192.168.1.5:5662 \'d2\'d1\'c1\'ac\'bd\'d3\cf3
\par [2015-12-14 14:43:38] \'c9\'cf\'d0\'d0\'ca\'fd\'be\'dd\'b7\'d6\'ce\'f6\'cf\'df\'b3\'cc\'bf\'aa\'ca\'bc\'d4\'cb\'d0\'d0\'a3\'a1\cf0
\par
\par }
把richedit的 plainText设为false
然后设置相关字体颜色、属性
然后用richedit.lines.savetoFile('aaaa.rtf')
你也可以用流方式
writeln只能写入纯文本。。
txt 不能带格式
txt是纯文本
不能保存rtf富文本
想要带格式有两种方式
一种是存储成解释行文本 类似论坛的UBB代码
[下划线]内容[/下划线]
这样的 读取的时候 然后在翻译成富文本
还有一种就是直接保存成rtf文件
你可以在richedit中的lines属性中去设置 写入带下划线的txt!
redt1.Lines.SaveToFile('d:\123.txt');
这样就行了,输出rtf也行