1

ディレクトリを作成および削除するための基本的な構文を知っています。私は奇妙な状況にあるので、どんな助けも本当に役に立ちます。

以下に示すようにディレクトリを作成します。

if (!dir.exists()) {
   dir.mkdir();
}
else 
   System.out.println("hfuiwedsjcz");

ディレクトリを作成すると、ディレクトリ内に複数のファイルがあります。これらのファイルに書き込み、ディレクトリ内のファイルに対していくつかの操作を実行します。
ディレクトリ内のファイルを読み書きした後にディレクトリが削除されるなど、ディレクトリを作成するプログラムを作成したい(フォルダを手動で削除しないようにするため)。

最初にフォルダーを作成してから削除する再帰的なプロセスであると想定しています。次回実行するときは、フォルダーを作成するのではなく、再度作成して最後に削除する必要があります。

どうすればいいですか?

4

3 に答える 3

6

1 つのオプションは、クラスのdeleteOnExit()メソッドを使用することです。Fileディレクトリとファイルを作成するたびに、これを呼び出します。

ファイルを登録した逆の順序で JVM が存在する場合は、ファイルを削除します。

if (!dir.exists()) {
   dir.mkdir();
   dir.deleteOnExit();
}

// etc...
于 2013-07-16T14:28:44.533 に答える
1

ディレクトリが一度作成され、実行するたびに、最後にディレクトリをクリーンアップする (ディレクトリを空にする) だけだと仮定するのはどうですか? これはあなたを助けるかもしれません:

FileUtils.cleanDirectory

または、必要に応じて、次を選択できます。

FileUtils.forceMkdir()

最後に、次のいずれかを行います。

FileUtils.deleteDirectory() または

FileUtils.forceDeleteOnExit()

これは他の人の回答と似ていますが、jdk 1.7 ではなく 1.6 を使用している場合は、これがより簡単な方法です (残念ながら、まだ 1.6 を使用している人がたくさんいます)。

于 2013-07-16T14:29:22.197 に答える
0

java.io.File.deleteOnExit()作成された各 File オブジェクトで使用します。File最初のディレクトリから開始する必要があります。使用するオブジェクトごとに作成して呼び出します。

于 2013-07-16T14:31:58.860 に答える