All files in the JAVA Traversal folder (recursive calls and non-recursive calls)
1. Method calls that do not use recursion.
public void TraverseFolder1 (String path) {int filenum = 0, foldernum = 0;
File File = new file (path);
if (file.exists ()) {linkedlist<file> list = new linkedlist<file> ();
file[] files = file.listfiles (); for (File file2:files) {if (File2.isdirectory ()) {System.out.println ("folder:" + file
2.getAbsolutePath ());
List.add (file2);
foldenum++;
else {System.out.println ("file:" + File2.getabsolutepath ());
filenum++;
} File Temp_file;
while (!list.isempty ()) {temp_file = List.removefirst ();
Files = Temp_file.listfiles (); for (File file2:files) {if (File2.isdirectory ()) {System.out.println ("folder:
"+ File2.getabsolutepath ()); List.add (file2);
foldernum++;
else {System.out.println ("file:" + File2.getabsolutepath ());
filenum++;
else {System.out.println ("file does not exist!")}}}
System.out.println ("folder total:" + Foldernum +), a total of files: "+ FileNum); }
2. Using recursive method calls.
public void TraverseFolder2 (String path) {
file File = new file (path);
if (file.exists ()) {
file[] files = file.listfiles ();
if (Files.length = = 0) {
System.out.println ("folder is empty!");
return;
} else {for
(File file2:files) {
if (file2.isdirectory ()) {
System.out.println ("folder:" + File2.getabsolutepath ());
TraverseFolder2 (File2.getabsolutepath ());
} else {
System.out.println ("file:" + File2.getabsolutepath ());}}}}
else {
System.out.println ("file does not exist!");
}
3,
public static list<file> getfilelist (String strpath) {file dir = new file (St
Rpath); file[] files = dir.listfiles (); All files in the file directory are placed in the array if (!= null) {for (int i = 0; i < files.length; i++) {Str
ing fileName = files[i].getname ();
if (Files[i].isdirectory ()) {//Judge is a file or folder Getfilelist (Files[i].getabsolutepath ());//Get File absolute path else if (Filename.endswith ("avi")) {//To determine if the filename ends with an. avi String strFileName = Files[i].geta
Bsolutepath ();
SYSTEM.OUT.PRINTLN ("---" + strfilename);
Filelist.add (Files[i]);
else {continue;
}} return filelist; }