空指針異常,求大佬解釋下,哪里有問題
package coreJava;
import java.io.File;
import java.io.IOException;
public class FileUtilTest1 {
public static void main(String[] args) throws IOException {
FileUtils.listDirectory(new File("C:\\Users\\Administrator\\Desktop\\JAVA筆記2\\編碼.txt"));
}
}
package coreJava;
import java.io.File;
import java.io.IOException;
//列出File的一些常用操作,例如過濾,遍歷等操作
public class FileUtils {
//列出指定目錄下(包括其子目錄的所有文件)
public static void listDirectory(File dir)throws IOException{
if(!dir.exists()) {
throw new IllegalArgumentException("目錄"+dir+"不存在");
}
/* if(!dir.isDirectory()) {
throw new IllegalArgumentException(dir+"不是目錄");
}*/
/*String[] filenames=dir.list();//返回字符串的數(shù)組 直接子的名稱,不包含子目錄下的內(nèi)容,無法對其再進行文件操作
for (String string : filenames) {
System.out.println(dir+"\\"+string);
}*/
//如果要遍歷子目錄下的內(nèi)容就需要構(gòu)造成File對象做遞歸操作,File提供了直接返回文件類對象
File[] files=dir.listFiles();//返回的是直接子目錄(文件)的抽象
if(files.length>0) {
System.out.println("Yes");
}else {
System.out.println("No");
}
}
}
2018-09-10
你傳進去的參數(shù)是個txt文件不是個目錄,即使調(diào)用了list方法 ,方法里files這個數(shù)組還是null,所以在判斷files.length的時候會報異常,應(yīng)該是這樣吧