java常用类(递归调用列出文件夹的所有子文件)

java.io.File类代表系统文件(路径和文件名)

File类的常见构造方法。
public File(String pathname)
以pathname为路径创建File对象,如果pathname是相对路径,默认的当前路径在系统属性user.dir中存储。

public File(String parent, String child)
以parent为父路径,child为子路径创建File对象。
File的静态属性String separator存储了当前系统的路径分隔符。
无论是Linux或Windows一般用"/"比较好。

通过File对象可以访问文件的属性。
public boolean canRead()
pubblic boolean canWrite()
public boolean exists()
public boolean isDirectory()
publlic boolean isFile()
public boolean isHiden()
public long lastMOdified() //存储自上次修改隔了多少毫秒
public long length()
public String getName()
public String getPath()

通过File对象创建空文件或目录(在该对象所指的文件或目录不存在的情况下)
public boolean createNewFile() throws IOException
public boolean delete()
public boolean mkdir()
public boolean mkdirs() //创建在路径中的一系列目录

创建文件的代码:


import java.io.*;

public class TestMath {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        String separator = File.separator;
        String filename =  new String("myfile.txt");
        String directory = "dir1" + separator + "dir2";
        File f = new File(directory,filename);
        if(f.exists()) {
            System.out.println(f.getAbsolutePath());
            System.out.println(f.length());
        } else {
            /*创建路径*/
            f.getParentFile().mkdirs();
            try {
                /*创建文件并且捕抓出现的IOException异常*/
                f.createNewFile();
            }catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

}



import java.io.*;

public class FileList {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        File f = new File("src/A");
        System.out.println(f.getName());
        int level = 1;
        list(f, level);
    }
    private static void list(File f, int level) {
        String preStr="";
        for(int i=0; i<level; i++) {
            preStr += "     ";
        }
        
        if(f.isDirectory()) {
            File[] files = f.listFiles();
            for( File file : files) {
                System.out.println(preStr+file.getName());
                list(file, ++level);
            }
        }
    }
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容