科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件Delphi实现同类型文档自动合并

Delphi实现同类型文档自动合并

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文介绍了如何用delphi实现大批量同类型文档自动合并

作者:prmmer 来源:论坛 2007年10月31日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
 ②具体实现(运行环境:Delphi5.0+Windows98):

  首先新建一个Delphi Project,在默认的Form1上放置两个RichEdit控件:RichEdit1和RichEdit2,将RichEdit2的ScrollBars属性置为ssBoth。再在Form1上放置一个按扭Button1,将其Caption属性置为"开始合并",如图1所示。


图1 Delphi下的Project

  按扭Button1的单击事件处理如下:

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
filename,rear:string;
begin
richedit1.clear;
richedit2.Clear;
filename:='f:\ce900\text\sentence';
{设要合并的900个RTF文档以文件名"sentence***.rtf"存放在F:\ce900\text文件夹中,***代表001~900}
for i:=1 to 900 do
begin
if i<10 then rear:='00'+inttostr(i)
else if i<100 then rear:='0'+inttostr(i)
else rear:=inttostr(i);
Richedit1.Lines.LoadFromFile(filename+rear+'.rtf');
RichEdit1.SelectAll;
RichEdit1.CopyToClipboard;
Richedit2.PasteFromClipboard;
RichEdit1.SetFocus;
end;
Richedit2.Lines.SaveToFile('f:\ce900\ce900.rtf');
{合并后的整个文档以文件名ce900.rtf保存在F:\ce900文件夹中}
end;

  运行实例如图2所示。


图2 合并文档演示实例

  若要合并的多个文档是无格式的文本文件,文件名毫无规律,且要合并的对象由用户选择(连续或不连续),则可用下面的程序段来实现,合并结果由用户指定文件名以文本文件形式保存。

procedure TForm1.Button1Click(Sender: TObject);
var
I: integer;
F: TextFile;
content: string;
begin
OpenDialog1.Options := [ofAllowMultiSelect, ofFileMustExist];
OpenDialog1.Filter := 'Text files (*.txt)|*.txt|All files (*.*)|*.*';
OpenDialog1.FilterIndex := 2; { start the dialog showing all files }
if OpenDialog1.Execute then
with OpenDialog1.Files do
for I := 0 to Count - 1 do
begin
AssignFile(F, Strings[I]);
Reset(F);
while not Eof(F) do
begin
Readln(F, FirstLine);
Memo1.Lines.Append(FirstLine);
end;
CloseFile(F);
end;
if savedialog1.Execute then
Memo1.Lines.SaveToFile (Savedialog1.Filename);
end;

  3.结束语

  本文给出了文本格式文件和一般文本文件的批量合并方法,其思路对其它类似的任务也有一定的参考价值。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章