首 页
┆
源码下载
┆
IT学院
┆
字体下载
┆
模板下载
┆
源码发布
┆
广告合作
┆
网站地图
►
设为首页
►
加入收藏
►
联系我们
源码下载
>>
ASP源码
|
PHP源码
|
ASP.net源码
|
JSP源码
|
CGI源码
|
VC/C++源码
|
VB源码
|
Delphi源码
|
Flash源码
文章学院
>>
网络编程
|
网页设计
|
图形图象
|
数据库
|
服务器
|
网络媒体
|
网络安全
|
操作系统
|
办公软件
|
软件开发
|
黑客知识
字体下载
>>
精制字体
|
非英字体
|
艺术字体
|
著名字体
|
哥特式
|
简单字体
|
手写体
|
节假日
|
图案字体
|
精度像素
|
中文字体
模板下载
>>
企业门户
|
数码网络
|
休闲娱乐
|
影视音乐
|
旅游名胜
|
文化艺术
|
电子商务
|
个性展示
|
登陆导航
|
Flash模板
源码搜索
文章搜索
字体搜索
模板搜索
►►
您当前的位置:
源码园
→
IT学院
→
软件开发
→
Delphi编程
→ 文章内容
Delphi实现同类型文档自动合并
作者:佚名 来源:网上收集 发布时间:2005-12-8 1:37:38
最近,买了一张英语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中内容读入并追加到末尾,最后再将该控件的内容保存到另一个文件中。
由于要合并的每个文档内容均为多行文本,且使用了多种字体和格式,Standard页上的Memo组件显然不合适,于是选用Win32页上RichEdit组件。
RichEdit组件的主要特性和方法如下:
属性Lines
声明:property Lines:Tstrings;
可以通过这个属性访问每一行,它是一个Tstrings对象,TStrings 类的方法,如Count、 Add、Delete 、Replace、LoadFromFile 、SaveToFile都可以用于Lines文本行的处理。其中:
LoadFromFile方法的声明为:procedure LoadFromFile(const FileName: string); virtual;
其作用是从FileName指定的文件中读取列表。
SaveToFile方法的声明为:procedure SaveToFile(const FileName: string); virtual;
其作用为将列表中的串保存到FileName 指定的文件中。
属性PlainText
声明:property PlainText:Boolean;
用于设置从文件中读取文本或把文本写到文件时以哪种格式进行,设为False表示RTF格式,设为True表示普通文本格式。
方法Clear
声明:procedure Clear; override;
清除所有文本(用空串替换所有文本)。若仅清除被选择的部分文本,要用ClearSelection方法。
方法SelectAll
声明:procedure SelectAll;
选择组件中的所有文本,若只选择部分文本,使用SelStart和SelLength 属性。
方法CopyToClipboard
声明:procedure CopyToClipboard;
调用CopyToClipboard方法是用被选择的文本替换剪贴板内容。如果没有选择任何文本, CopyToClipbard方法什么也不做,也不会清除剪贴板内容。
方法PasteFromClipboard
声明:procedure PasteFromClipboard;
调用PasteFromClipboard方法是用剪贴板内容替换被选择的文本或在光标处插入剪贴板内容,若剪贴板无内容,则该方法什么也不做。
[] [
返回上一页
] [
打 印
]
上一篇文章:
Delphi开发98屏幕保护预览程序
下一篇文章:
Delphi托盘编程实战演练
相关文章:
[图文]
利用Delphi编制IP地址转换器
简析XML及其在Delphi中的应用
Delphi模拟最小化恢复关闭按纽
Delphi实现远程串口的数据采集
[图文]
Delphi开发基于DCOM的聊天室
在Delphi中使用电子邮件
Delphi托盘编程实战演练
Delphi实现同类型文档自动合并
Delphi开发98屏幕保护预览程序
[图文]
Delphi 8 For .NET 抢先预览
[图文]
用Delphi实现动态获取版本信息
Delphi图像存取另类解决方案
关于本站
-
网站帮助
-
广告合作
-
下载声明
-
友情连接
-
网站地图
-
源码发布
Copyright © 2003-2009
Ymyasp
.Com
. All Rights Reserved .
备案序号:粤ICP备07029071号