Java-io-file-list-filter
提供:Dev Guides
Java.io.File.list()メソッド
説明
- java.io.File.list(FilenameFilter filter)*は、この抽象パス名で定義された、指定されたフィルターを満たすディレクトリ内のファイルとディレクトリの配列を返します。 指定されたフィルターがヌルの場合、すべての名前が受け入れられます。
宣言
以下は* java.io.File.list(FilenameFilter filter)*メソッドの宣言です-
public String[] list(FilenameFilter filter)
パラメーター
NA
戻り値
このメソッドは、指定されたフィルターを満たす、この抽象パス名で定義されたディレクトリ内のファイルとディレクトリの配列を返します。
例外
*SecurityException* -セキュリティマネージャが存在し、そのSecurityManager.checkRead(java.lang.String)メソッドがファイルへの読み取りアクセスを拒否する場合
例
次の例は、java.io.File.list(FilenameFilter filter)メソッドの使用方法を示しています。
package com.finddevguides;
import java.io.File;
import java.io.FilenameFilter;
public class FileDemo implements FilenameFilter {
String str;
//constructor takes string argument
public FileDemo(String ext) {
str = "."+ext;
}
//main method
public static void main(String[] args) {
String[] paths;
try {
//create new file
f = new File("c:/test");
//create new filter
FilenameFilter filter = new FileDemo("txt");
//array of files and directory
paths = f.list(filter);
//for each name in the path array
for(String path:paths) {
//prints filename and directory name
System.out.println(path);
}
} catch(Exception e) {
//if any error occurs
e.printStackTrace();
}
}
@Override
public boolean accept(File dir, String name) {
return name.endsWith(str);
}
}
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
child_test.txt