热搜
您的位置:首页 >> 故事

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

2019年11月05日 栏目:故事

②具体实现(运行环境:Delphi5.0+Windows98):首先新建一个Delphi Project,在默认的Form1上放置两个R

②具体实现(运行环境: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.结束语

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

查看本文来源

山西太原白癜风医院冀慧霞
长沙年轮骨科医院在线咨询
贵阳正规的癫痫病医院是哪家
赣州妇科医院哪家好
榆林整形美容手术
  • 友情链接
  • 合作媒体