//列出当前指定目录下的所有文件。 package org.io.fieldemo; import java.io.*; class FindFile { private File f; private String flname=""; //用于返回所要输出的文件名 private int count=0; //对所查询到的文件个数进行计数 public File getF() { return f; } public void setF(File f) { this.f = f; } public String getFlname() { return flname; } public void setFlname(String flname) { this.flname = flname; } public void getFileName(File f){ if(f.isFile()){ System.out.println(f.getName()); //如果当前对象是一个文件,则直接输出 }else{ File fl[] = f.listFiles(); //如果当前当想是一个目录,则通过listFiles()方法返回一个当前文件夹下的对象数组 for (int i=0;i<fl.length;i++){ if(fl[i].isFile()){ flname = fl[i].getPath()+fl[i].getName()+"\n"+flname; //输出返回的对象数组中文件的名称。 count++; }else{ this.getFileName(fl[i]); //通过递归,把返回的对象数组中属于目录的对象传递给this.getFileName(File f); } } } } public int getCount() { return count; } public void setCount(int count) { this.count = count; } } public class FileDemo04 { public static void main(String[] args) throws Error { File f = new File("f:\\FTP"); System.out.println("isDirectory:"+f.isDirectory()); FindFile ff = new FindFile(); ff.getFileName(f); System.out.println("共查询到"+ff.getCount()+"个文件"); System.out.println(ff.getFlname()); } }
Copyright @ 2024 Jesuca Powered by .NET 9.0 on Kubernetes Powered by: .Text and ASP.NET Theme by: .NET Monster