listFiles()方法是File類的一部分。如果路徑名是目錄,則該函數返回一個File數組,表示給定抽象路徑名中的文件,否則返回null。該函數是重載函數。其中一個函數沒有任何參數,第二個函數將FilenameFilter對象作為參數,第三個函數將FileFilter對象作為參數
函數簽名:
public File[] listFiles() public File[] listFiles(FilenameFilter f) public File[] listFiles(FileFilter f)
函數語法:
file.listFiles() file.listFiles(filter)
參數:該函數是重載函數
- 該函數之一沒有任何參數,
- 第二個函數將FilenameFilter對象作為參數,
- 第三個函數將FileFilter對象作為參數
返回值:該函數返回一個File數組,如果文件對象是一個文件,則返回null值。
異常:如果不允許該函數對該文件進行讀取訪問,則此方法將引發Security Exception
下麵的程序將說明listFiles()函數的用法
範例1:我們將嘗試查找給定目錄中的所有文件和目錄
// Java program to demonstrate the
// use of listFiles() function
import java.io.*;
public class solution {
public static void main(String args[])
{
// try-catch block to handle exceptions
try {
// Create a file object
File f = new File("f:\\program");
// Get all the names of the files present
// in the given directory
File[] files = f.listFiles();
System.out.println("Files are:");
// Display the names of the files
for (int i = 0; i < files.length; i++) {
System.out.println(files[i].getName());
}
}
catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
輸出:
Files are: 1232.txt 1245.txt 5671.txt program1
範例2:我們將嘗試在給定目錄中查找名稱以“12”開頭的所有文件和目錄。
// Java program to demonstrate the
// use of listFiles() function
import java.io.*;
public class solution {
public static void main(String args[])
{
// try-catch block to handle exceptions
try {
// Create a file object
File f = new File("f:\\program");
// Create a FilenameFilter
FilenameFilter filter = new FilenameFilter() {
public boolean accept(File f, String name)
{
return name.startsWith("12");
}
};
// Get all the names of the files present
// in the given directory
// and whose names start with "12"
File[] files = f.listFiles(filter);
System.out.println("Files are:");
// Display the names of the files
for (int i = 0; i < files.length; i++) {
System.out.println(files[i].getName());
}
}
catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
輸出:
Files are: 1232.txt 1245.txt
範例3:我們將嘗試查找給定目錄中的所有文件和目錄,它們都是文本文件
// Java program to demonstrate the
// use of listFiles() function
import java.io.*;
public class solution {
public static void main(String args[])
{
// try-catch block to handle exceptions
try {
// Create a file object
File f = new File("f:\\program");
// Create a FileFilter
FileFilter filter = new FileFilter() {
public boolean accept(File f)
{
return f.getName().endsWith("txt");
}
};
// Get all the names of the files present
// in the given directory
// which are text files
File[] files = f.listFiles(filter);
System.out.println("Files are:");
// Display the names of the files
for (int i = 0; i < files.length; i++) {
System.out.println(files[i].getName());
}
}
catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
輸出:
Files are: 1232.txt 1245.txt 5671.txt
這些程序可能無法在在線IDE中運行。請使用離線IDE並設置文件的父文件
相關用法
- Java File getAbsolutePath()用法及代碼示例
- Java File length()用法及代碼示例
- Java File delete()用法及代碼示例
- Java File isHidden()用法及代碼示例
- Java File getName()用法及代碼示例
- Java File createTempFile()用法及代碼示例
- Java File getAbsoluteFile()用法及代碼示例
- Java File lastModified()用法及代碼示例
- Java File createNewFile()用法及代碼示例
- Java File getCanonicalPath()用法及代碼示例
- Java File isFile()用法及代碼示例
- Java File exists()用法及代碼示例
- Java File getFreeSpace()用法及代碼示例
- Java File setExecutable()用法及代碼示例
- Java File mkdir()用法及代碼示例
注:本文由純淨天空篩選整理自andrew1234大神的英文原創作品 File listFiles() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。