Delphi多层文件夹创建与删除
Delphi 的多层次文件夹操作,写系统工具或者搞点自动目录结构的小功能时挺常见。用TDirectory
和TFile
这两个类,配合CreateDirectory
和Delete
,基本能搞定大部分需求。递归建目录、带子文件的整包删除、路径是否存在的判断,都是几行代码的事。
多层目录的创建用TDirectory.CreateDirectory()
,自动递归,方便:
DirPath := 'C:\MyProject\Parent\Child\SubChild';
if not TDirectory.Exists(DirPath) then
TDirectory.CreateDirectory(DirPath);
删除文件夹就小心点,TDirectory.Delete()
加个True
就能连子目录带文件一锅端:
if TDirectory.Exists(DirPath) then
TDirectory.Delete(DirPath, True);
遍历子目录、获取文件列表啥的,用TDirectory.GetDirectories()
和GetFiles()
也挺顺手,输出路径直接Writeln
就完事了:
DirPaths := TDirectory.GetDirectories('C:\MyProject');
for DirPath in DirPaths do
Writeln(DirPath);
要注意权限问题,比如有文件被占用或者当前用户没权限,操作会抛异常,记得包一层try...except
会保险些。
如果你经常搞文件操作,尤其批量目录结构,建议把System.IOUtils
熟悉熟悉,效率提升挺的。
169.29KB
文件大小:
评论区