Java入门18--递归访问文件夹

版权声明:本文为博主原创文章,转载请声明本博主原创 https://blog.csdn.net/weixin_39381833/article/details/86602927

D15

递归访问文件夹

xxx(String dir)
if(new File(dir).exit()){
}
//1.判断是否存在
//2.判断时候文件---->输出文件路径
//3.文件夹,xxx();

package D15;

import java.io.File;

public class FileRecursiveDemo {
    public static void main(String[] args) {
        showFile("/Users/ifeng/Pictures/Photo Booth 图库");
    }
        //
        //*显示文件(文件 + 文件夹)路径名
        //
    private static void showFile(String path){
        //通过路径构造file对象
        File f = new File(path);
        if(f.exists()){
            //是否目录
            if(f.isDirectory()){
                System.out.println(f.getAbsolutePath());
                File[] children = f.listFiles();
                for(File ff : children){
                    String p0 = ff.getAbsolutePath();
                    showFile(p0);
                }
            }
            //是否文件
            else if(f.isFile()){
                System.out.println(f.getAbsolutePath());
            }
        }
        }
    }

在这里插入图片描述

IO流回顾

流向

输入流 
输出流

数据类型

字符流
字节流

功能

缓冲区流
非缓冲区流
转换流:字节流转换成字节流
InputStreamReader

在这里插入图片描述

常用函数

File F = new File("/.../../a.txt");

文件长度

File.length()

得到上级目录

F.getParent()

判断是否是只读文件

boolen bo = F.canWrite();

列出文件名称

F.listFiles()

重命名

//当前目录
F.renameTo(new File(File.getParent,"b.txt"));
//其他目录(原文件被删除)
F.renameTo(new File("/.../...","b.txt"));
//当b.txt已经文件存在,操作失败

创建文件

f = new File("/.../.../.../")
f.createNewFile();

列出文件系统的root

File[] fs = File.listRoots();
for(File f0 : fs){
	System.out.println(f0.getAbsoultePath());
}

猜你喜欢

转载自blog.csdn.net/weixin_39381833/article/details/86602927