[英]One-liner to make read-only list of N copies of a reference in Java
[英]Java: one-liner to list Dirs in a directory?
One-Liner列出TXT文件。
import java.io.File;
import java.io.FilenameFilter;
...
files = dir.listFiles(new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.toLowerCase().endsWith(".txt");
}
}
);
是否有一個單行列表在目錄中列出dirs?
public static void main (String[] args) throws Exception {
File dir = new File("yourDir");
FileFilter fileFilter = new FileFilter() {
public boolean accept(File file) {
return file.isDirectory();
}
};
File[] files = dir.listFiles(fileFilter);
for (File f : files)
System.out.println( f.getName() );
}
這使用Commons IO,但實際上是列出所有目錄名稱的最簡單方法。 它還有一套更強大的過濾器,可用於其他目的:
String[] dirNames = new File("/Users/jonathan").list(DirectoryFileFilter.INSTANCE);
for (String dirName: dirNames)
System.out.println("Directory Name: " + dirName);
import java.io.File;
import java.io.FileFilter;
...
files = dir.listFiles(new FileFilter() {
public boolean accept(File pathname) {
return pathname.isDirectory();
}
});
看看這個代碼,
import java.io.File;
import java.io.FilenameFilter;
public class FileNameFilter
{
public static void main(String[] args)
{
File fl = new File("yourDir");
// here we are retrieving only .txt files
FilenameFilter fnf = new FilenameFilter()
{
@Override
public boolean accept(File dir, String name)
{
if(name.endsWith(".txt"))
{
return true;
}
else
{
return false;
}
}
};
// passing "fnf" object to listFiles() method to retrieve only html files
File[] files = fl.listFiles(fnf);
for(File file : files)
{
System.out.println(file.getName());
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.