プログラミングをする上でファイルの削除、フォルダの作成と削除も必要になってくると思います。
ここではファイルの削除、フォルダの作成と削除方法、削除する際の注意事項を説明します。
ファイルの削除、フォルダの作成と削除
ファイルとフォルダーの削除
ファイルを削除する関数は 2つあります。
FileDelete 関数と FileRecycle 関数です。
形式:FileDelete ( “削除するファイルのパス” )
返し値:成功すると「1」、失敗すると(ファイルが削除できない場合、存在しない場合)「0」を返します。
形式:FileRecycle ( “ごみ箱に移動するファイルまたはフォルダーのパス” )
返し値:成功すると「1」、失敗すると(ファイルが使用中または存在しない場合)「0」を返します。
この 2つの関数では、ファイルに対してワイルドカードを使用することが出来ます。
ワイルドカードとは、「*.tmp」というように、拡張子の前にアスタリスク (*)を付けたものであり、「*.tmp」であれば拡張子が「.tmp」のファイルすべてを表します。
FileDelete("D:\*.tmp"); Dドライブ下の拡張子「.tmp」のファイルをすべて削除します。
FileRecycle("D:\*.tmp"); Dドライブ下の拡張子「.tmp」のファイルをすべてごみ箱に移動します。
FileDelete(@DesktopDir & "\test.txt"); デスクトップにある「test.txt」を削除します。
FileRecycle(@DesktopDir & "\test"); デスクトップにある「test」というフォルダーをごみ箱に移動します。
FileDelete 関数はファイルに対応し、FileRecycle 関数はファイルとフォルダーに対応しています。
例えば次のように FileDelete 関数でフォルダーを指定すると、指定したフォルダー下のファイルがすべて削除されます。
FileDelete(@DesktopDir & "\test"); デスクトップにある「test」というフォルダー下のファイルをすべて削除します。
フォルダーの中にサブフォルダーがある場合、サブフォルダー下のファイルは削除されません。
フォルダーの作成
フォルダーを作成するには、DirCreate 関数を使用します。
形式:DirCreate ( “作成するフォルダーのパス” )
返し値:作成に成功すると「1」、失敗すると「0」を返します。
DirCreate(@DesktopDir & "\test"); デスクトップに「test」というフォルダーを作成します。
フォルダーの削除
フォルダの削除には DirRemove 関数を使用します。
形式:DirRemove ( “削除するフォルダのパス” [, フラグ] )
フラグ:
- 0 = (デフォルト) ファイルとサブフォルダを削除しません
- 1 = ファイルとフォルダを削除します(DOSのDelTreeコマンドと同様)
返し値:削除に成功すると「1」、失敗すると「0」を返します。
DirRemove(@DesktopDir & "\test", 1); デスクトップにある「test」フォルダーとその中の全てのフォルダ・ファイルを削除します。
次のコードはデスクトップにある「test」フォルダーを削除しますが、フラグを指定していませんので、デフォルトの「0」となり、削除対象のフォルダーの中に何かファイルやフォルダーが存在する場合、削除に失敗します。
; デスクトップにある「test」フォルダーを削除します。
$test = DirRemove(@DesktopDir & "\test")
If Not $test Then
MsgBox(16, "エラー", "削除できませんでした。 返し値「" & $test & "」")
Else
MsgBox(0, "C:\test を削除しました。", $test)
EndIf
フラグ「1」を指定すると、フォルダーごと中身が入っていようとすべて削除されます。
上でも説明したように、ファイル、フォルダーの削除を試す場合は十分に注意してください。
コメント