- PR -

ディレクトリに存在する全てのファイルを削除する方法

1
投稿者投稿内容
karei
常連さん
会議室デビュー日: 2004/06/01
投稿数: 20
投稿日時: 2004-08-12 16:47
いつもお世話になります。

早速質問ですが、
あるディレクトリに存在する全てのファイルを、削除するため
以下のように記述致しましたが、削除できませんでした。
また、* の部分を実際のファイル名に指定するとうまくいきます。
ですが、今回は拡張子の無いファイルや様々な拡張子のファイルが
存在するので、全てのファイルを削除したいのです。

ご存知の方がいらっしゃれば教えて頂けないでしょうか?
宜しく御願いします。

File file = new File( "c:/app/eclipse/workspace/geography/historyBak/*" );
file.delete();
おばけ
ぬし
会議室デビュー日: 2002/11/14
投稿数: 609
お住まい・勤務地: 東京都江東区
投稿日時: 2004-08-12 16:55
気持ちは分かりますが、ちょっと無理です

  • 消したいファイルが入っているディレクトリを得る
  • ディレクトリ内のファイルを全てリストアップ
  • ファイルを1個ずつ消す

と言う手順が必要ですね。
Javaでは、ディレクトリもファイルもjava.io.Fileで表します。
したがって、後はFileのAPIを見て頂ければ宜しいかと。
karei
常連さん
会議室デビュー日: 2004/06/01
投稿数: 20
投稿日時: 2004-08-12 16:58
おばけさん、有難う御座います。
そうですか、無理なんですね。
一つ一つファイルを消すPGを書くことにします。
有難う御座いました。
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2004-08-12 16:59
とりあえず思いつくのは、
1. Runtime#execで削除コマンドを実行する。
2. ディレクトリに存在するファイルのリストを再帰的に取得し、一つ一つ削除する。
くらいですか。
あいつー
ベテラン
会議室デビュー日: 2004/05/20
投稿数: 89
投稿日時: 2004-08-12 18:43
内部構造を知った上で、という条件付になりますが、
Jakartaのcommons-ioに含まれるFileUtilを利用すると楽ですね。
1

スキルアップ/キャリアアップ(JOB@IT)