トップへ戻る

Autoitプログラミング

ファイル、フォルダの削除

プログラミングをする上でファイル、フォルダのコピー、削除も必要になってきます。

 

特にファイルの削除には注意してください。

 

安易にファイルを削除すると元に戻せなくなる、またはWindows が起動しなくなる場合があります。

 

よくある質問 の Q1 を読んでいない方は必ずお読みください。

 

ファイル削除には2種類あります。

 

1つはファイルをゴミ箱に移動するFileRecycle 関数、ファイルを直接削除するFileDelete 関数。

 

FileRecycle ( "ファイルまたはフォルダのパス" )

 

FileDelete ( "ファイルパス" )

 

どちらも使用方法は同じで、ワイルドカードにも対応しています。

 

ワイルドカードに関しては、ヘルプファイルの FileFindFirstFile 関数の注意事項にある説明をお読みください。

 

FileDelete はファイルのみに対応していますが、FileRecycle はフォルダにも対応しています。

 

※FileRecycle でフォルダを削除する場合、末尾にバックスラッシュ(\)を付ける必要はありません。

 

 

;テンポラリフォルダの中のすべての拡張子「.tmp」ファイルをゴミ箱に移動します。
FileRecycle(@TempDir & "\*.tmp")

 

;テンポラリフォルダの中の「新しいフォルダー」 フォルダーをゴミ箱に移動します。
FileRecycle(@TempDir & "\新しいフォルダー")

 

 

 

上記はゴミ箱に移動していますが、次はゴミ箱に移動せず直接削除します。

 

 

;テンポラリフォルダの中のすべてのファイルをゴミ箱に移動せず直接削除します。
FileDelete(@TempDir & "\*.*")

 

;テンポラリフォルダの中の「新しいフォルダー」 フォルダーをゴミ箱に移動せず直接削除します。
FileDelete(@TempDir & "\新しいフォルダー")

 

 

 

フォルダの削除

 

フォルダの削除は DirRemove 関数を使用します。

 

形式:DirRemove ( "フォルダのパス" [, フラグ] )

 

フラグ 0 (デフォルト)では、削除したいフォルダの下にあるファイルとサブフォルダを削除しません。

 

わかりにくいと思いますが、削除したいフォルダ下にファイルまたはフォルダが存在する場合、

 

削除したいフォルダは削除されないということです。

 

フラグ 1 にすると、削除したいフォルダ下にファイルまたはフォルダが存在していても

 

構わず削除したいフォルダを削除します。

 

まずデスクトップに新規フォルダーを作成し、名前を「test」に変更し、testフォルダの中に新規でフォルダとテキストファイルを

 

1つずつ作成しておきましょう。

 

既に「test」という名前のフォルダが存在している場合、別の名前のフォルダを作成し、

 

コード中の「test」の部分を書き換えてください。

 

誤って大事なフォルダを削除しないようお気を付けください。

 

 

DirRemove(@DesktopDir & "\test")

 

MsgBox(0, '', "フォルダは削除されていませんね?")

 

DirRemove(@DesktopDir & "\test", 1)

 

MsgBox(0, '', "フォルダは削除されましたね?")

 

 

 

 

実際に動作を確認してみましょう。