- ベストアンサー
ファイル削除について
- ファイルをワイルドカードを使って一括削除する方法について教えてください。ディレクトリは相対パスで指定できるようにしたいです。
- 自分で作成したプログラムでファイルのあいまい検索ができず困っています。また、一度に複数のファイルを削除する方法も教えてください。
- 使用するプログラムの言語はVB.NETです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
直接ワイルドカードを使っての削除ならKillを使用します。 確かに、お勧めは出来ません。 もう一つの方法はどうでしょう? My.Computer.FileSystem.DeleteFile を使えば、ループ関数は使いますがワイルドカードを使用しての削除が出来ています。 この部分ですね。 For Each FileName As String In System.IO.Directory.GetFiles( _ My.Computer.FileSystem.SpecialDirectories.Desktop, "*.txt") 'System.IO.File.Delete(FileName) 'オプションはお好みで My.Computer.FileSystem.DeleteFile(FileName, FileIO.UIOption.AllDialogs, _ FileIO.RecycleOption.SendToRecycleBin, FileIO.UICancelOption.DoNothing) Next 「My.Computer.FileSystem.SpecialDirectories.Desktop」を 「C:\temp\」に変更し 「*.txt」の部分を「111-001*」に変更すれば、削除が出来ると思います。
その他の回答 (2)
- 沙羅 聖児(@sara_seiji)
- ベストアンサー率25% (25/98)
プログラマーの1年生なんですね。 自分で調べて勉強することはいいことです。 良いところに就職できるといいですね。 ボクは某所でゲームプログラムの教務をしています。 まぁ、教えているのはC言語ですが、 色んな言語に手を出しているので、ある程度ならわかります。 あと、危険だと思われること以外は、 何でも試してみることが大事ですよ。 今回の相対パスで出来るかどうかは試してみるといいです。 まぁ、先ほど教えた「My.Computer.FileSystem.DeleteFile」の関数は、 使ったことが無いので、確実にできるとは言えませんが、 まずできると思います。試してみてくださいね。
- 沙羅 聖児(@sara_seiji)
- ベストアンサー率25% (25/98)
http://hanatyan.sakura.ne.jp/vbnetbbs/wforum.cgi?no=7136&reno=7133&oya=7133&mode=msgview&page=0 このURLのやり方で、削除が出来るようになりまます。
お礼
ご回答ありがとうございます。 ちょっときになったのですが ※お勧めはできませんが、Kill 関数なら ワイルドカードが使用できるようです とあるのであまり使いたくないです。また相対アドレスの指定方法がいまいち わかりませんでした。 せっかくご回答いただいたのに申し訳けありませんが 他のプログラム方法を教えていただけませんでしょうか 本当に申し訳ありません。
お礼
お忙しいところ何度もご回答ありがとうございます。 相対アドレスで削除したいのですがそれはこのプログラムで 可能でしょうか。 何分にもプログラマ1年生の新人でして手取り足取りの回答を求め 申し訳けありません