Delphi rename all file in a directory
2009-06-23 18:10
555 查看
unit main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ShellCtrls, ExtCtrls, StdCtrls, Grids, Outline,
DirOutln;
type
TMainForm = class(TForm)
DirView: TShellTreeView;
FileView: TShellListView;
Panel1: TPanel;
btnChange: TButton;
Splitter1: TSplitter;
Label2: TLabel;
procedure btnChangeClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MainForm: TMainForm;
implementation
uses Help;
{$R *.dfm}
procedure TMainForm.btnChangeClick(Sender: TObject);
var
i,n: Integer;
objectfilename, sourcefilename,newfile,sPath: String;
begin
//waring!
if Application.MessageBox('do you true rename?','OK', MB_YESNO) = IDNO then
Exit;
objectfilename := '';
newfile:='';
//get filedirctory
if (FileView.Items.Count > 0) then
sPath := ExtractFilePath(FileView.Folders[0].pathname); //filepath
//rename begin
for i:=0 to FileView.Items.Count-1 do
begin
sourcefilename := FileView.Folders[i].pathname;
//ShowMessage('sourcefilename= '+sourcefilename);
n := Length(ExtractFileExt(sourcefilename));
objectfilename:=ExtractFileName(sourcefilename); //filename
//repalce()
objectfilename:= stringReplace(objectfilename,#32,'-',[rfReplaceAll]);
objectfilename:= stringReplace(objectfilename,'---','-',[rfReplaceAll]);
objectfilename:= stringReplace(objectfilename,'--','-',[rfReplaceAll]);
newfile := sPath + objectfilename ;
// ShowMessage('newfile= '+newfile);
RenameFile(sourcefilename, newfile);
end;
ShowMessage('work end!');
end;
procedure TMainForm.FormCreate(Sender: TObject);
begin
DirView.SetVisiblePath(ExtractFilePath(Application.ExeName));
end;
end.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ShellCtrls, ExtCtrls, StdCtrls, Grids, Outline,
DirOutln;
type
TMainForm = class(TForm)
DirView: TShellTreeView;
FileView: TShellListView;
Panel1: TPanel;
btnChange: TButton;
Splitter1: TSplitter;
Label2: TLabel;
procedure btnChangeClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MainForm: TMainForm;
implementation
uses Help;
{$R *.dfm}
procedure TMainForm.btnChangeClick(Sender: TObject);
var
i,n: Integer;
objectfilename, sourcefilename,newfile,sPath: String;
begin
//waring!
if Application.MessageBox('do you true rename?','OK', MB_YESNO) = IDNO then
Exit;
objectfilename := '';
newfile:='';
//get filedirctory
if (FileView.Items.Count > 0) then
sPath := ExtractFilePath(FileView.Folders[0].pathname); //filepath
//rename begin
for i:=0 to FileView.Items.Count-1 do
begin
sourcefilename := FileView.Folders[i].pathname;
//ShowMessage('sourcefilename= '+sourcefilename);
n := Length(ExtractFileExt(sourcefilename));
objectfilename:=ExtractFileName(sourcefilename); //filename
//repalce()
objectfilename:= stringReplace(objectfilename,#32,'-',[rfReplaceAll]);
objectfilename:= stringReplace(objectfilename,'---','-',[rfReplaceAll]);
objectfilename:= stringReplace(objectfilename,'--','-',[rfReplaceAll]);
newfile := sPath + objectfilename ;
// ShowMessage('newfile= '+newfile);
RenameFile(sourcefilename, newfile);
end;
ShowMessage('work end!');
end;
procedure TMainForm.FormCreate(Sender: TObject);
begin
DirView.SetVisiblePath(ExtractFilePath(Application.ExeName));
end;
end.
相关文章推荐
- Howto change all file and directory in a folder to 777?
- bash no such file or directory in ubuntu 1404
- List all in the Directory
- 解决MAC下PHP连接MYSQL错误Warning: mysql_connect(): No such file or directory in conn.php
- Linux File Sharing in a Microsoft Active Directory Domain
- hadoop fs -ls results in “no such file or directory”
- Link all references for a local rename (does not change references in other files)
- File transfer & File rename & Folder creation in java codes
- Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0
- Inline Hook NtQueryDirectoryFile
- Can't open a connection to site 'SYB_BACKUP'. See the error log file in the ASE boot directory. Msg
- git tip: How to undo an uncommitted change/deletion for a specific file in your working directory
- how to unzip a file in a system directory
- CSharp Algorithm - Recursive method (Iterate all directories and files in a directory)
- Git提交时提示‘The file will have its original line endings in your working directory’
- N: Ignoring file '50unattended-upgrades.ucf-dist' in directory '/etc/apt/apt.conf.d/' as it has an i
- 解决MAC下PHP连接MYSQL错误Warning: mysql_connect(): No such file or directory in conn.php
- File/Directory Permission in Unix/Linux
- How to Determine if a file is a .Net assembly (in Delphi and C#)
- Using Create directory & UTL_FILE in Oracle