File

关于文件和文件夹的操作,我们使用的都是一个类:File

常用的构造器 说明
File(String pathname) 将指定的路径名转换成一个File对象
File(String parent,String child) 根据指定的父路径和文件路径创建对象

方法:

File类常用方法
boolean createNewFile() 当指定文件(或文件夹)不存在时创建文件并返回true,否则返回false,路径不存在则抛出异常
boolean mkdir() 当指定文件(或文件夹)不存在时创建文件夹并返回true,否则返回false
boolean mkdirs() 创建指定文件夹,所在文件夹目录不存在时,则顺道一块创建
boolean delete() 删除文件  。要删除一个目录,需要先删除这个目录下的所有子文件和子目录
boolean renameTo(File dest) 将当前File对象所指向的路径修改为指定File所指的路径 (修改文件名称)
boolean exists() 是否存在
boolean isFile() 是否为一个文件
boolean isDirectory() 是否是一个目录
String getPath() 获取文件路径

获取文件的信息

指定一个目录,在目录下创建文件

public void createNewFile(String pathname) {
    File file = new File("d:/",pathname);
    if( !file.exists() ) {
        try {
            file.createNewFile();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

创建方法:printFileInfo , 输出文件相关的信息

public void printFileInfo(String pathname) {
    File file = new File(pathname);
    System.out.println("文件名:"+ file.getName());
    System.out.println("文件路径:"+ file.getPath());
    System.out.println("文件的父路径:"+ file.getParentFile());
    System.out.println("文件是否存在:"+ file.exists());
    System.out.println("是否为文件:"+ file.isFile());
    System.out.println("是否为文件夹:"+ file.isDirectory());
}

使用File制作目录浏览器

这个程序出了 File ,还需要使用到数学上的一个概念「递归」。在代码中就是方法在内部代码中可以调用自身,但是需要有正常的技术方式,否则无法停止的话在可能会OOM的。

方法名 说明
String[] list() 返回文件夹下面的文件名列表
File[] listFiles() 返回文件夹下面的文件对象列表
public class FileExplorer {    public static void main(String[] args) {        File f = new File("D:\\epub");        printTree(f, 0);    }    public static void printTree(File f, int level) {        for (int j = 0; j < level; j++) {            System.out.print("\t");        }        System.out.println(f.getAbsolutePath());        if (f.isDirectory()) {            level++;            File strs[] = f.listFiles();            for (int i = 0; i < strs.length; i++) {                File f0 = strs[i];                printTree(f0, level + 1);            }        }    }}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容