ファイル操作/ディレクトリ配下のファイルを削除する
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* ディレクトリ配下のファイルを削除するサンプル [#f8a99c25]
Javaで指定したディレクトリ配下のファイルをすべてを削除す...
#contents
* 関連記事 [#t9546cc3]
-[[サブディレクトリ内を含むファイル一覧を取得するサンプル...
* サンプルソース [#nddeb65d]
getFileList()メソッドを再帰呼出しすることにより、サブディ...
尚、本サンプルプログラムは以下の引数を必要とします。
java RemoveFiles ディレクトリ
ディレクトリを指定しないとUsageが表示されます。
サンプルソースの構造は、指定したサブディレクトリ内のファ...
ファイルおよびディレクトリの一覧を作成後、java.util.Colle...
これは、最後に見つかったファイルまたはディレクトリから削...
&ref(RemoveFiles.java); LF
import java.io.File;
import java.util.List;
import java.util.ArrayList;
import java.util.Collections;
class RemoveFiles {
private void usage() {
System.err.println("Usage: java RemoveFiles <dir...
System.exit(1);
}
private List<File> getFileList(String dir, List<File...
File f = new File(dir);
File[] fl = f.listFiles();
if (fl != null) {
for (File item : fl) {
fileList.add(item);
if (item.isDirectory()) {
getFileList(dir + System.getProperty...
}
}
}
return fileList;
}
public static void main(String[] args) {
RemoveFiles me = new RemoveFiles();
// check arguemnts
if ((args.length !=1)) {
me.usage();
}
// directory ?
File f = new File(args[0]);
if (!f.exists()) { // false
System.out.println(args[0] + " directory is ...
System.exit(2);
}
if (f.isFile()) {
System.out.println(args[0] + " is file, Plea...
System.exit(3);
}
if(!f.isDirectory()) {
System.out.println(args[0] + " is unknown, P...
System.exit(4);
}
List<File> fileList = new ArrayList<File>();
fileList.add(new File(args[0]));
me.getFileList(args[0], fileList);
Collections.reverse(fileList);
for (File fitem : fileList) {
fitem.delete();
}
}
}
* コンパイルおよび実行結果 [#h2c2c160]
上記サンプルソースをコンパイルして実行してみます。
+ コンパイルいます。
$ javac RemoveFiles.java
+引数を指定しないと以下のようにUsageが表示されます。
$ java RemoveFiles
Usage: java RemoveFiles <directory>
+ファイルや存在しないファイルまたはディレクトリを指定する...
$ java RemoveFiles foo
foo directory is not found.
$ touch dummy ; java RemoveFiles dummy
dummy is file, Please set the directory.
+ テスト用にディレクトリ・サブディレクトリ・ファイルを作...
$ mkdir -p foo/{bar1,bar2}/{hoge1,hoge2,hoge3}
$ touch foo/foofile foo/bar1/{barfile1,barfile2}
$ touch foo/bar1/hoge1/{hoge1file,hoge2file}
$ touch foo/bar2/hoge3/{hoge3-1file,hoge3-2file}
$ tree foo
foo
├── bar1
│ ├── barfile1
│ ├── barfile2
│ ├── hoge1
│ │ ├── hoge1file
│ │ └── hoge2file
│ ├── hoge2
│ └── hoge3
├── bar2
│ ├── hoge1
│ ├── hoge2
│ └── hoge3
│ ├── hoge3-1file
│ └── hoge3-2file
└── foofile
#br
+fooディレクトリを引数としてコンパイルしたサンプルプログ...
$ ls -ld foo
drwxrwxr-x 4 sakura sakura 4096 7月 16 00:48 foo
$ java RemoveFiles foo
+ 削除されていることを確認します。
$ ls -l foo
ls: 'foo' にアクセスできません: そのようなファイルやディ...
以上、指定したディレクトリ配下のファイルを削除するサンプ...
終了行:
#navi(../)
* ディレクトリ配下のファイルを削除するサンプル [#f8a99c25]
Javaで指定したディレクトリ配下のファイルをすべてを削除す...
#contents
* 関連記事 [#t9546cc3]
-[[サブディレクトリ内を含むファイル一覧を取得するサンプル...
* サンプルソース [#nddeb65d]
getFileList()メソッドを再帰呼出しすることにより、サブディ...
尚、本サンプルプログラムは以下の引数を必要とします。
java RemoveFiles ディレクトリ
ディレクトリを指定しないとUsageが表示されます。
サンプルソースの構造は、指定したサブディレクトリ内のファ...
ファイルおよびディレクトリの一覧を作成後、java.util.Colle...
これは、最後に見つかったファイルまたはディレクトリから削...
&ref(RemoveFiles.java); LF
import java.io.File;
import java.util.List;
import java.util.ArrayList;
import java.util.Collections;
class RemoveFiles {
private void usage() {
System.err.println("Usage: java RemoveFiles <dir...
System.exit(1);
}
private List<File> getFileList(String dir, List<File...
File f = new File(dir);
File[] fl = f.listFiles();
if (fl != null) {
for (File item : fl) {
fileList.add(item);
if (item.isDirectory()) {
getFileList(dir + System.getProperty...
}
}
}
return fileList;
}
public static void main(String[] args) {
RemoveFiles me = new RemoveFiles();
// check arguemnts
if ((args.length !=1)) {
me.usage();
}
// directory ?
File f = new File(args[0]);
if (!f.exists()) { // false
System.out.println(args[0] + " directory is ...
System.exit(2);
}
if (f.isFile()) {
System.out.println(args[0] + " is file, Plea...
System.exit(3);
}
if(!f.isDirectory()) {
System.out.println(args[0] + " is unknown, P...
System.exit(4);
}
List<File> fileList = new ArrayList<File>();
fileList.add(new File(args[0]));
me.getFileList(args[0], fileList);
Collections.reverse(fileList);
for (File fitem : fileList) {
fitem.delete();
}
}
}
* コンパイルおよび実行結果 [#h2c2c160]
上記サンプルソースをコンパイルして実行してみます。
+ コンパイルいます。
$ javac RemoveFiles.java
+引数を指定しないと以下のようにUsageが表示されます。
$ java RemoveFiles
Usage: java RemoveFiles <directory>
+ファイルや存在しないファイルまたはディレクトリを指定する...
$ java RemoveFiles foo
foo directory is not found.
$ touch dummy ; java RemoveFiles dummy
dummy is file, Please set the directory.
+ テスト用にディレクトリ・サブディレクトリ・ファイルを作...
$ mkdir -p foo/{bar1,bar2}/{hoge1,hoge2,hoge3}
$ touch foo/foofile foo/bar1/{barfile1,barfile2}
$ touch foo/bar1/hoge1/{hoge1file,hoge2file}
$ touch foo/bar2/hoge3/{hoge3-1file,hoge3-2file}
$ tree foo
foo
├── bar1
│ ├── barfile1
│ ├── barfile2
│ ├── hoge1
│ │ ├── hoge1file
│ │ └── hoge2file
│ ├── hoge2
│ └── hoge3
├── bar2
│ ├── hoge1
│ ├── hoge2
│ └── hoge3
│ ├── hoge3-1file
│ └── hoge3-2file
└── foofile
#br
+fooディレクトリを引数としてコンパイルしたサンプルプログ...
$ ls -ld foo
drwxrwxr-x 4 sakura sakura 4096 7月 16 00:48 foo
$ java RemoveFiles foo
+ 削除されていることを確認します。
$ ls -l foo
ls: 'foo' にアクセスできません: そのようなファイルやディ...
以上、指定したディレクトリ配下のファイルを削除するサンプ...
ページ名: