Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16496207
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 20:49:33

下载本文示例代码
天极IT资讯短信服务 电脑小技巧 function check4() { if (dn.mobile.value.length!=11) { alert("手机号码不正确!"); dn.mobile.focus(); return false; } return true; } 资费:包月5元 手机: 介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。   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中内容读入并追加到末尾,最后再将该控件的内容保存到另一个文件中。  由于要合并的每个文档内容均为多行文本,且使用了多种字体和格式,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方法是用剪贴板内容替换被选择的文本或在光标处插入剪贴板内容,若剪贴板无内容,则该方法什么也不做。共2页。 1 2 : 天极IT资讯短信服务 电脑小技巧 function check4() { if (dn.mobile.value.length!=11) { alert("手机号码不正确!"); dn.mobile.focus(); return false; } return true; } 资费:包月5元 手机: 介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。   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中内容读入并追加到末尾,最后再将该控件的内容保存到另一个文件中。  由于要合并的每个文档内容均为多行文本,且使用了多种字体和格式,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方法是用剪贴板内容替换被选择的文本或在光标处插入剪贴板内容,若剪贴板无内容,则该方法什么也不做。共2页。 1 2 : 下载本文示例代码


Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并Delphi实现同类型文档自动合并
阅读(273) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~