创建目录(文件夹)
代码
调用 MkDir
创建目录
procedure TForm1.Button1Click(Sender: TObject);
begin
//创建目录
MkDir('D:\测试目录1');
//如果目录存在时引发异常
try
MkDir('D:\测试目录1');
except
ShowMessage(Exception(ExceptObject).Message);
end;
//父目录不存在时引发异常
try
MkDir('D:\测试目录1\目录1\目录2');
except
ShowMessage(Exception(ExceptObject).Message);
end;
//使用相对路径创建目录
MkDir('测试目录1');
end;
调用 CreateDir
创建目录
procedure TForm1.Button2Click(Sender: TObject);
begin
//创建目录,成功返回True
if CreateDir('D:\测试目录2') then
ShowMessage('创建目录成功');
//如果目录存在,返回False
if not CreateDir('D:\测试目录2') then
ShowMessage('目录已存在');
//父目录不存在,返回False
if not CreateDir('D:\测试目录2\目录1\目录2') then
ShowMessage('父目录不存在');
//使用相对路径创建目录
CreateDir('测试目录2');
end;
调用 ForceDirectories
创建目录
procedure TForm1.Button3Click(Sender: TObject);
begin
//创建多级目录
//目录不存在时才创建,创建失败返回False,已存在时不创建返回True
//父目录不存在时会创建
if ForceDirectories('D:\测试目录3\目录1\目录2') then
ShowMessage('创建多级目录成功');
//按层级创建,目录中包含特殊字符不创建,全部目录创建成功才返回True
if not ForceDirectories('D:\测试目录3\目录1\<目录2>\目录3') then
ShowMessage('部分目录创建成功');
//使用相对路径创建目录时引发异常
try
ForceDirectories('测试目录3\目录1\目录2');
except
ShowMessage(Exception(ExceptObject).Message);
end;
end;
调用 TDirectory.CreateDirectory
创建目录
uses System.IOUtils;
procedure TForm1.Button4Click(Sender: TObject);
begin
//创建多级目录
//目录不存在时才创建,已存在时不创建
//父目录不存在时会创建
TDirectory.CreateDirectory('D:\测试目录4\目录1\目录2');
//按层级创建,目录中包含特殊字符不创建
TDirectory.CreateDirectory('D:\测试目录4\目录1\<目录2>\目录3');
//使用相对路径创建目录
TDirectory.CreateDirectory('测试目录4\目录1\目录2');
end;
方法
System.MkDir
procedure MkDir(const S: string);
procedure MkDir(P: PChar);
unit
创建一个新的子目录。其路径由字符串 S 或 P 指定。路径中的最后一项不能为已存在的文件名。
MkDir
只创建最后一个目录; 它不会创建父目录,而 ForceDirectories
会。
在 Delphi 中,{$I+} 使用异常处理运行时错误。 当使用 {$I-} 时,使用
IOResult
检查 I/O 错误。
System.SysUtils.CreateDir
function CreateDir(const Dir: string): Boolean;
unit
创建一个新目录。如果成功创建新目录,返回值为 True;如果发生错误,返回值为 False。
System.SysUtils.ForceDirectories
function ForceDirectories(Dir: string): Boolean;
unit
在给定路径创建一个新目录,包括根据需要创建父目录。该目录必须是完全限定的路径名。如果路径中给定的目录还不存在,将尝试创建它们。
如果成功创建所有必需的目录,则返回 True,如果无法创建所需的目录,则返回 False。
不要用空字符串调用
ForceDirectories
,会引发异常。Vcl.FileCtrl 单元(仅限 Windows)包含一个已弃用的
ForceDirectories
函数。System.SysUtils.ForceDirectories
是首选,可用于多设备应用程序。
System.IOUtils.TDirectory.CreateDirectory
class procedure CreateDirectory(const Path: string); static;
unit
在给定路径上创建一个新目录。如果路径中给定的目录还不存在,将尝试创建它们。
标签:ForceDirectories,创建,delphi,MkDir,System,文件夹,测试,目录 From: https://www.cnblogs.com/txgh/p/17090869.html如果给定的路径无效或包含无效字符,会引发异常。