一个文件夹里有N(约100)个文本文件文件,请帮忙我提示一下,怎么做能够输出一个字符串到指定文件里,该字符串包括这N个文件的文件名(不要拓展名),而且还需要在每个文件名前后分别加上A和B,比如:文件分别是 a.text, b.text, c.text, …… p.text输出:AaBAbBAcb……ApB最好把DELPHI源程序传我,,谢谢!E-Mail:[email protected]
调试欢乐多
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
Label1: TLabel;
Edit1: TEdit;
Bevel1: TBevel;
Label2: TLabel;
Button2: TButton;
Button3: TButton;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;
dir:string; //文件所在目录
ext:string;//文件后缀名
procedure myfindfile(var fs:tstringlist;fdir:string;fext:string);
//自定义过程,遍历给定目录,找出所有指定扩展名的文件
//s将返回所找到的文件名 ,dir为指定目录,ext为指定后缀名
procedure changefilename(var fFileNames:tstringlist);
implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
filenames:tstringlist;
begin
if opendialog1.Execute then
dir:=extractfilepath(opendialog1.FileName)
else
exit;
ext:=lowercase(edit1.Text);
filenames:=tstringlist.Create;
myfindfile(filenames,dir,ext);
memo1.Clear;
memo1.Lines.AddStrings(filenames);
filenames.Free;
//extractfilepath返回文件目录,包含反斜杠'\'
//dir:=extractfiledir(opendialog1.FileName);
//extractfiledir返回文件目录,不包含反斜杠'\'
//showmessage('extractfilepath-'+dir);
end;procedure myfindfile(var fs:tstringlist;fdir:string;fext:string);
var
searchrec:TSearchRec;
begin
if FindFirst(fdir+'*.'+fext, faAnyFile, SearchRec)<>0 then
exit; //如果什么也找不到(目录或者文件),退出.
fs.Add(searchrec.Name);
while findnext(searchrec)=0 do
begin
fs.Add(searchrec.Name);
end;
findclose(searchrec);
end;procedure changefilename(var fFileNames:tstringlist);
var
i:integer;
begin
for i:=0 to ffileNames.Count-1 do
begin
ffileNames.Strings[i]:=ChangeFileExt(ffileNames.Strings[i],'');
ffileNames.Strings[i]:='A'+ffileNames.Strings[i]+'B';
end;
end;procedure TForm1.Button4Click(Sender: TObject);
var
temp:tstringlist;
begin
temp:=tstringlist.Create;
temp.AddStrings(memo1.Lines);
memo1.Clear;
changefilename(temp);
memo1.Lines.AddStrings(temp);
temp.Free;
end;procedure TForm1.Button3Click(Sender: TObject);
begin
close;
end;procedure TForm1.Button2Click(Sender: TObject);
var
f:string;
begin
if savedialog1.Execute then
f:=savedialog1.FileName;
memo1.Lines.SaveToFile(f);
end;end.