1.引言
最近,买了一张英语900句的学习光盘,因为没有相应的书面文字材料,就想自己将光盘中的文档提取出来,可一打开光盘,发现虽然每一句都有相应的详细文字材料,但每一句都单独存放在一个独立的RTF文档中(Sentence001.rtf至Sentence900.rtf),使用起来非常麻烦,于是就想将所有900句句型的文字材料合并到一起,即将900个独立的文档合并为一个文档。
2.解决方法
2.1 常规方法
首先想到的方法就是利用Word的文档合并功能,即将另一篇 Word 文档插入到当前打开的文档中的方法。具体操作步骤为:
① 打开sentence001(在打开文件的对话中,文件类型选RTF格式)。
② 将光标定位到文档末尾。
③ 单击"插入"菜单中的"文件…"菜单项。
④ 在打开的插入文件对话框中,"文件名"框中输入要插入文件的名称:如sentence002.rtf
这样就将前两句句型所在的两个文档合并成一个文档,并以sentence001.rtf存在。显然,只要不断地重复上述过程,最终肯定会将分散在900个文档中的900句句型合并在一个文档中。过程虽然简单,却非常费时,因此只适用于少数文档的合并操作。
2.2 Delphi在文档合并中的应用
考虑到:
(1) 要合并的每个文件名均以"sentence"开头,后分别接001、002,…,900,非常有规律。
(2) 合并时,每次都是将新文档的内容添加在原文档的末尾,也即插入在原文档的最后,插入位置固定。
于是就思考有没有更快捷的办法,而且最好让计算机自动帮助完成整个合并过程。
①思路:在Delphi中,选择一个能接受和处理多行文本的控件,首先将sentence001.rtf的内容读入到其中,然后循环,依次将sentence002.rtf、sentence003.rtf中内容读入并追加到末尾,最后再将该控件的内容保存到另一个文件中。