【JAVA百炼成仙】红尘为仙 ——IO(目录操作、文件操作)

举报
桃花键神 发表于 2022/04/17 12:17:02 2022/04/17
【摘要】 【JAVA百炼成仙】红尘为仙 ——IO(目录操作、文件操作)

🔎这里是JAVA成仙路,关注我学习JAVA不迷路
👍如果对你有帮助,给博主一个免费的点赞以示鼓励
欢迎各位🔎点赞👍评论收藏⭐️

前言:本章具体介绍了目录操作、文件操作的基本使用方法和常用函数,图解穿插代码实现。

JAVA成仙路从基础开始讲,后续会讲到JAVA高级,中间会穿插面试题和项目实战,希望能给大家带来帮助!

@[TOC]
在这里插入图片描述

目录操作

创建目录

File类中有两个方法可以用来创建文件夹:

mkdir( )方法创建一个文件夹,成功则返回true,失败则返回false。失败表明File对象指定的路径已经存在,或者由于整个路径还不存在,该文件夹不能被创建。
mkdirs()方法创建一个文件夹和它的所有父文件夹。

创建目录AAA路径为D:AAA

public class Mk {
    public static void main(String[] args) {
        File file=new File("D://AAA");
        file.mkdir();
    }
}

在这里插入图片描述

创建多重目录,路径为D:/BBB/BB/B

public class Mk {
    public static void main(String[] args) {
        File file=new File("D://BBB/BB/B");
        file.mkdirs();
    }
}

在这里插入图片描述

判断这个文件或目录是否存在

如果创建一个 File 对象并且它存在,那么调用 sexists() 方法会返回 true。

public class Mk {
    public static void main(String[] args) {
        File file=new File("D://BBB/BB/B");
        System.out.println(file.sexists() );
    }
}

在这里插入图片描述

判断是否是目录

如果创建一个 File 对象并且它是一个目录,那么调用 isDirectory() 方法会返回 true。

public class Mk {
        public static void main(String[] args) {
            File file=new File("D://BBB/BB/B");
            System.out.println(file.isDirectory());
        }
    }

在这里插入图片描述

读取目录

一个目录其实就是一个 File 对象,它包含其他文件和文件夹。
可以通过调用该对象上的 list() 方法,来提取它包含的文件和文件夹的列表。

查看目录BBB中有哪些文件和目录
这是目录中的文件和目录

在这里插入图片描述

用代码在控制台输出

  public class Mk {
        public static void main(String[] args) {
            File file=new File("D://BBB");
            String[] ss=file.list();
            for (String s : ss) {
                System.out.println(s);
            }
        }
    }

在这里插入图片描述

删除目录

删除文件可以使用 java.io.File.delete() 方法。
以下代码会删除目录 D://BBB/BB/B,需要注意的是当删除某一目录时,必须保证该目录下没有其他文件才能正确删除,否则将删除失败。

   public class Mk {
        public static void main(String[] args) {
            //删除目录D://BBB/BB/B
            File file=new File("D://BBB/BB/B");
            file.delete();
            }
        }

在这里插入图片描述

文件操作

创建文件

在目录AAA下创建文件aaa.txt

    public class Mk {
        public static void main(String[] args) throws IOException {

            File file=new File("D://AAA/aaa.txt");
            file.createNewFile();
            }
        }

在这里插入图片描述

删除文件

删除aaa.txt

 public class Mk {
        public static void main(String[] args) throws IOException {

            File file=new File("D://AAA/aaa.txt");
            file.delete();
            }
        }

在这里插入图片描述

File对象常用函数

创建:

1、createNewFile() 指定位置创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false。
2、mkdir() 在指定位置创建一个单级文件夹。
3、mkdirs() 在指定位置创建一个多级文件夹。
4、renameTo(File dest) 如果目标文件与源文件是在同一个路径下,那么renameTo的作用是重命名, 如果目标文件与源文件不是在同一个路径下,那么renameTo的作用就是剪切,而且还不能操作文件夹。

删除:

delete() 删除文件或者一个空文件夹,不能删除非空文件夹,马上删除文件,返回一个布尔值。
deleteOnExit() jvm退出时删除文件或者文件夹,用于删除临时文件,无返回值。

判断:

exists() 文件或文件夹是否存在。
isFile() 是否是一个文件,如果不存在,则始终为false。
isDirectory() 是否是一个目录,如果不存在,则始终为false。
isHidden() 是否是一个隐藏的文件或是否是隐藏的目录。
isAbsolute() 测试此抽象路径名是否为绝对路径名。

获取:

getName() 获取文件或文件夹的名称,不包含上级路径。
getAbsolutePath() 获取文件的绝对路径,与文件是否存在没关系
length() 获取文件的大小(字节数),如果文件不存在则返回0L,如果是文件夹也返回0L。
getParent() 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回null。
lastModified() 获取最后一次被修改的时间。

文件夹相关:

static File[] listRoots() 列出所有的根目录(Window中就是所有系统的盘符)
list() 返回目录下的文件或者目录名,包含隐藏文件。对于文件这样操作会返回null。
listFiles() 返回目录下的文件或者目录对象(File类实例),包含隐藏文件。对于文件这样操作会返回null。
list(FilenameFilter filter) 返回指定当前目录中符合过滤条件的子文件或子目录。对于文件这样操作会返回null。
listFiles(FilenameFilter filter) 返回指定当前目录中符合过滤条件的子文件或子目录。对于文件这样操作会返回null。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。