- //判断文件是否存在 FileExists
- var
- f: string;
- begin
- f := 'c:/temp/test.txt';
- if not FileExists(f) then
- begin
- //如果文件不存在
- end;
- end;
- --------------------------------------------------------------------------------
- //判断文件夹是否存在 DirectoryExists
- var
- dir: string;
- begin
- dir := 'c:/temp';
- if not DirectoryExists(dir) then
- begin
- //如果文件夹不存在
- end;
- end;
- --------------------------------------------------------------------------------
- //删除文件 DeleteFile; Windows.DeleteFile
- var
- f: string;
- begin
- f := 'c:/temp/test.txt';
- //DeleteFile(f); //返回 Boolean
- //或者用系统API:
- Windows.DeleteFile(PChar(f)); //返回 Boolean
- end;
- --------------------------------------------------------------------------------
- //删除文件夹 RemoveDir; RemoveDirectory
- var
- dir: string;
- begin
- dir := 'c:/temp';
- RemoveDir(dir); //返回 Boolean
- //或者用系统 API:
- RemoveDirectory(PChar(dir)); //返回 Boolean
- end;
- --------------------------------------------------------------------------------
- //获取当前文件夹 GetCurrentDir
- var
- dir: string;
- begin
- dir := GetCurrentDir;
- ShowMessage(dir); //C:/Documents and Settings/wy/My Documents/RAD Studio/Projects
- end;
- --------------------------------------------------------------------------------
- //设置当前文件夹 SetCurrentDir; ChDir; SetCurrentDirectory
- var
- dir: string;
- begin
- dir := 'c:/temp';
- if SetCurrentDir(dir) then
- ShowMessage(GetCurrentDir); //c:/temp
- //或者
- ChDir(dir); //无返回值
- //也可以使用API:
- SetCurrentDirectory(PChar(Dir)); //返回 Boolean
- end;
- --------------------------------------------------------------------------------
- //获取指定驱动器的当前路径名 GetDir
- var
- dir: string;
- b: Byte;
- begin
- b := 0;
- GetDir(b,dir);
- ShowMessage(dir); //
- //第一个参数: 1、2、3、4...分别对应: A、B、C、D...
- //0 是缺省驱动器
- end;
- --------------------------------------------------------------------------------
- //文件改名 RenameFile
- var
- OldName,NewName: string;
- begin
- OldName := 'c:/temp/Old.txt';
- NewName := 'c:/temp/New.txt';
- if RenameFile(OldName,NewName) then
- ShowMessage('改名成功!');
- //也可以:
- SetCurrentDir('c:/temp');
- OldName := 'Old.txt';
- NewName := 'New.txt';
- if RenameFile(OldName,NewName) then
- ShowMessage('改名成功!');
- end;
- --------------------------------------------------------------------------------
- //建立文件夹 CreateDir; CreateDirectory; ForceDirectories
- var
- dir: string;
- begin
- dir := 'c:/temp/delphi';
- if not DirectoryExists(dir) then
- CreateDir(dir); //返回 Boolean
- //也可以直接用API:
- CreateDirectory(PChar(dir),nil); //返回 Boolean
- //如果缺少上层目录将自动补齐:
- dir := 'c:/temp/CodeGear/Delphi/2007/万一';
- ForceDirectories(dir); //返回 Boolean
- end;
- --------------------------------------------------------------------------------
- //删除空文件夹 RemoveDir; RemoveDirectory
- var
- dir: string;
- begin
- dir := 'c:/temp/delphi';
- RemoveDir(dir); //返回 Boolean
- //也可以直接用API:
- RemoveDirectory(PChar(dir)); //返回 Boolean
- end;
- --------------------------------------------------------------------------------
- //建立新文件 FileCreate
- var
- FileName: string;
- i: Integer;
- begin
- FileName := 'c:/temp/test.dat';
- i := FileCreate(FileName);
- if i>0 then
- ShowMessage('新文件的句柄是: ' + IntToStr(i))
- else
- ShowMessage('创建失败!');
- end;
- --------------------------------------------------------------------------------
- //获取当前文件的版本号 GetFileVersion
- var
- s: string;
- i: Integer;
- begin
- s := 'C:/WINDOWS/notepad.exe';
- i := GetFileVersion(s); //如果没有版本号返回 -1
- ShowMessage(IntToStr(i)); //327681 这是当前记事本的版本号(还应该再转换一下)
- end;
- --------------------------------------------------------------------------------
- //获取磁盘空间 DiskSize; DiskFree
- var
- r: Real;
- s: string;
- begin
- r := DiskSize(3); //获取C:总空间, 单位是字节
- r := r/1024/1024/1024;
- Str(r:0:2,s); //格式为保留两位小数的字符串
- s := 'C盘总空间是: ' + s + ' GB';
- ShowMessage(s); //xx.xx GB
- r := DiskFree(3); //获取C:可用空间
- r := r/1024/1024/1024;
- Str(r:0:2,s);
- s := 'C盘可用空间是: ' + s + ' GB';
- ShowMessage(s); //xx.xx GB
- end;