こんにちは、表裏 未里です。いつもお世話になっております。
良いアルゴリズムが思いつかなくてこちらに質問させてもらうことにしました。
フォルダの中のファイルを全て消す処理(拡張子はばらばらで沢山ファイルがあります)
良い案がありましたら、よろしければご教授よろしくお願いします。
FindFirst 関数・FindNext 関数を使い、ディレクトリ内のファイル名をリストアップし、
DeleteFile 関数で実際に削除する
のはどうですか?
以下はどうですか?
http://delfusa.main.jp/delfusafloor/archive/www.nifty.ne.jp_forum_fdelphi/faq/00161.htm
igy様、通りすがり様。ご親切にありがとうございます!
URL大変参考になりました。無事全てのファイルを消すことができました。ありがとうございました。
こんな方法もあります.参考までに
usesにShellAPIが必要
AFolderが削除するフォルダのパス ex D:\AAA
procedure TForm1.Button1Click(Sender: TObject);
var
AFolder : String;
FileOp : TSHFileOpStruct;
begin
//TShFileOpStruct構造体の各値を設定
with FileOp do begin
Wnd := Application.Handle;
wFunc := FO_DELETE;
pFrom := PChar(AFolder+#0#0);
pTo := nil;
fFlags := FOF_ALLOWUNDO;
end;
SHFileOperation(FileOp);
end;
Mr.XRAY様。ありがとうございます!
とても短いコードで実現出来るんですね! 凄いです!
こちらも参考にさせて頂きますね。皆さんお優しくてとてもありがたいです。
今後ともよろしくお願いします。
ツイート | ![]() |