欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java 对电脑的文件浏览(目录和文件)和删除操作

程序员文章站 2022-03-03 09:06:53
...

主要是用递归方式实现浏览文件目录下的所有的东西

 public static void main(String[] args) {
        //1.目录的获取
        // 1)根目录
        File[] fs=File.listRoots();
        if(fs!=null)
        {
            System.out.println("当前系统有以下盘符");
            for(File file:fs)
            {
                System.out.println(file.getPath()+"\t"+genSizeString(file.getTotalSpace())+"\t"+genSizeString(file.getUsableSpace()));
            }
        }

        // 2)显示一个目录下的子目录(不包括孙目录)
//        File f3=new File("C:Users");
//        File[] fs3=f3.listFiles();
//        if(fs3!=null)
//        {
//            for(File ff:fs3){
//                if(ff.isFile())
//                {
//                    System.out.println(ff.getPath()+"\t文件\t"+ff.length());
//
//                }else{
//                    System.out.println(ff.getPath()+"\t目录\t");
//                }
//
//            }
//        }
        File f3=new File("F:\\show");
        showALL(f3,1);
        showDelete(f3);

    }
//显示文件大小
    private  static  String genSizeString(long size)
    {
        if((size/1024/1024/1024/1024)>0)
        {
          return  size/1024/1024/1024/1024+"TB";
        }else if(size/1024/1024/1024>0){
            return size/1024/1024/1024+"GB";

        }else if(size/1024/1024>0){
            return size/1024/1024+"MB";

        }else if(size/1024>0){
            return size/1024+"KB";
        }
          return "";
    }

    //递归
    private static void D(String file)
    {

        File f3=new File(file);
        File[] fs3=f3.listFiles();
        if(fs3!=null)
        {
            for(File ff:fs3){
                if(ff.isFile())
                {
                    System.out.println(ff.getPath()+"\t文件\t"+ff.length());

                }else{
                    System.out.println(ff.getPath()+"目录");
                    D(ff.getPath());
                }
            }
        }

    }
    //递归显示

    private  static void showALL(File f,int level)
    {
        long mtime =f.lastModified();
        Date d=new Date(mtime);
        DateFormat df=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
        String mitimeString=df.format(d);
        for(int i=1;i<level;i++)
        {
            System.out.print("\t");
        }

        if(f.isFile()) {

            System.out.println(f.getName()+"\t文件\t"+genSizeString(f.length())+"\t"+mitimeString);
        }else {
            System.out.println(f.getName()+"\t目录\t"+"\t"+mitimeString);
            File[] ff=f.listFiles();
            if(ff!=null&&ff.length>0)
            {
                for(File fs:ff)
                {
                    showALL(fs,level+1);
                }

            }
        }
    }

 //递归删除 只删除文件
    private  static void showDelete(File f)
    {
        if(f.isDirectory())
        {
            File[] ff=f.listFiles();
            if(ff!=null&&ff.length>0)
            {
                for(File fs:ff)
                {
                    showDelete(fs);
                }
            }
        }
        System.out.println(f+"删除成功?"+f.delete());

    }

 

相关标签: 学习java java