當前位置:成語大全網 - 書法字典 - java如何循環讀取目錄中文件的內容?

java如何循環讀取目錄中文件的內容?

JAVA遍歷文件夾下的所有文件(遞歸調用和非遞歸調用)

1.不要使用遞歸方法調用。

public void traverse folder 1(字符串路徑){

int fileNum = 0,folder num = 0;

File file =新文件(路徑);

if (file.exists()) {

LinkedList & lt文件& gtlist = new LinkedList<。文件& gt();

file[]files = file . list files();

for(文件file2 : files) {

if (file2.isDirectory()) {

system . out . println(" folder:"+file 2 . getabsolutepath());

list . add(file 2);

filenum++;

}否則{

system . out . println(" file:"+file 2 . getabsolutepath());

folder num++;

}

}

文件temp _ file

而(!list.isEmpty()) {

temp _ file = list . remove first();

files = temp _ file . list files();

for(文件file2 : files) {

if (file2.isDirectory()) {

system . out . println(" folder:"+file 2 . getabsolutepath());

list . add(file 2);

filenum++;

}否則{

system . out . println(" file:"+file 2 . getabsolutepath());

folder num++;

}

}

}

}否則{

System.out.println("文件不存在);

}

System.out.println("文件夾* *有:"+folderNum+",文件* *有:"+fileNum ");

}

2.使用遞歸方法調用

公共靜態列表& lt文件& gtgetFileList(字符串路徑){

File dir =新文件(strPath);

file[]files = dir . list files();//這個文件目錄下的所有文件都放入數組中。

如果(文件!= null) {

for(int I = 0;我& ltfiles.lengthi++) {

字符串fileName = files[i]。getName();

If (files[i].isDirectory()) {//確定它是文件還是文件夾。

getFileList(files[i].getAbsolutePath());//獲取文件的絕對路徑

} else if(文件名。endswith(" avi "){//確定文件名是否以。阿維。

String strFileName = files[i]。getAbsolutePath();

system . out . println("-"+strFileName);

filelist . add(files[I]);

}否則{

繼續;

}

}

}

返回文件列表;

}