前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java成神路 —— 文件操作

Java成神路 —— 文件操作

作者头像
繁依Fanyi
发布2023-05-07 17:01:39
1440
发布2023-05-07 17:01:39
举报
文章被收录于专栏:繁依Fanyi 的专栏

1.1 File 类概述和构造方法

1. File 类介绍
  • 它是文件和目录路径名的抽象表示
  • 文件和目录是可以通过 File 封装成对象的
  • 对于 File 而言,其封装的并不是一个真正存在的文件,仅仅是一个路径名而已。它可以是存在的,也可以是不存在的。将来是要通过具体的操作把这个路径的内容转换为具体存在的
2. File 类的构造方法

方法名

说明

File(String pathname)

通过将给定的路径名字符串转换为抽象路径名来创建新的 File 实例

File(String parent, String child)

从父路径名字符串和子路径名字符串创建新的 File 实例

File(File parent, String child)

从父抽象路径名和子路径名字符串创建新的 File 实例

3. 示例代码
代码语言:javascript
复制
import java.io.File;

public class Demo {
    public static void main(String[] args) {

        //File(String pathname):通过将给定的路径名字符串转换为抽象路径名来创建新的 File 实例。
        File f1 = new File("D:\\demo\\java.txt");
        System.out.println(f1);

        //File(String parent, String child):从父路径名字符串和子路径名字符串创建新的 File 实例。
        File f2 = new File("D:\\demo","java.txt");
        System.out.println(f2);

        //File(File parent, String child):从父抽象路径名和子路径名字符串创建新的 File 实例。
        File f3 = new File("D:\\demo");
        File f4 = new File(f3,"java.txt");
        System.out.println(f4);
    }
}

1.2 File类创建功能

1. 方法分类

方法名

说明

public boolean createNewFile()

当具有该名称的文件不存在时,创建一个由该抽象路径名命名的新空文件

public boolean mkdir()

创建由此抽象路径名命名的目录

public boolean mkdirs()

创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录

2. 示例代码
代码语言:javascript
复制
import java.io.File;
import java.io.IOException;

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

        // 在D:\\demo目录下创建一个文件java.txt
        File f1 = new File("D:\\demo\\java.txt");
        System.out.println(f1.createNewFile());

        // 在D:\\demo目录下创建一个目录JavaSE
        File f2 = new File("D:\\demo\\JavaSE");
        System.out.println(f2.mkdir());
      
        //在D:\\demo目录下创建一个多级目录JavaWEB\\HTML
        File f3 = new File("D:\\demo\\JavaWEB\\HTML");
        System.out.println(f3.mkdirs());

        //在D:\\demo目录下创建一个文件javase.txt
        File f4 = new File("D:\\demo\\javase.txt");
        System.out.println(f4.createNewFile());
    }
}

1.3 File类判断和获取功能

1. 判断功能

方法名

说明

public boolean isDirectory()

测试此抽象路径名表示的File是否为目录

public boolean isFile()

测试此抽象路径名表示的File是否为文件

public boolean exists()

测试此抽象路径名表示的File是否存在

2. 获取功能

方法名

说明

public String getAbsolutePath()

返回此抽象路径名的绝对路径名字符串

public String getPath()

将此抽象路径名转换为路径名字符串

public String getName()

返回由此抽象路径名表示的文件或目录的名称

public String[] list()

返回此抽象路径名表示的目录中的文件和目录的名称字符串数组

public File[] listFiles()

返回此抽象路径名表示的目录中的文件和目录的File对象数组

3. 示例代码
代码语言:javascript
复制
import java.io.File;

public class Demo {
    public static void main(String[] args) {

        //创建一个File对象
        File f = new File("myFile\\java.txt");

        // public boolean isDirectory():测试此抽象路径名表示的File是否为目录
        // public boolean isFile():测试此抽象路径名表示的File是否为文件
        // public boolean exists():测试此抽象路径名表示的File是否存在
        System.out.println(f.isDirectory());
        System.out.println(f.isFile());
        System.out.println(f.exists());

        // public String getAbsolutePath():返回此抽象路径名的绝对路径名字符串
        // public String getPath():将此抽象路径名转换为路径名字符串
        // public String getName():返回由此抽象路径名表示的文件或目录的名称
        System.out.println(f.getAbsolutePath());
        System.out.println(f.getPath());
        System.out.println(f.getName());
        System.out.println("--------");

        // public String[] list():返回此抽象路径名表示的目录中的文件和目录的名称字符串数组
        // public File[] listFiles():返回此抽象路径名表示的目录中的文件和目录的File对象数组
        File f2 = new File("D:\\demo");
        String[] strArray = f2.list();
        for(String str : strArray) {
            System.out.println(str);
        }
        System.out.println("--------");
        File[] fileArray = f2.listFiles();
        for(File file : fileArray) {
            if(file.isFile()) {
                System.out.println(file.getName());
            }
        }
    }
}

1.4 File类删除功能

1. 方法分类

方法名

说明

public boolean delete()

删除由此抽象路径名表示的文件或目录

2. 示例代码
代码语言:javascript
复制
import java.io.File;
import java.io.IOException;

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

        // 在当前模块目录下创建java.txt文件
        File f1 = new File("myFile\\java.txt");

        // 删除当前模块目录下的java.txt文件
        System.out.println(f1.delete());
        System.out.println("--------");

        // 在当前模块目录下创建demo目录
        File f2 = new File("myFile\\demo");

        // 删除当前模块目录下的demo目录
        System.out.println(f2.delete());
        System.out.println("--------");

        // 在当前模块下创建一个目录demo,然后在该目录下创建一个文件java.txt
        File f3 = new File("myFile\\demo");
        File f4 = new File("myFile\\demo\\java.txt");

        // 删除当前模块下的目录demo
        System.out.println(f4.delete());
        System.out.println(f3.delete());
    }
}
3. 绝对路径和相对路径的区别
  • 绝对路径:完整的路径名,不需要任何其他信息就可以定位它所表示的文件。例如:D:\demo\java.txt
  • 相对路径:必须使用取自其他路径名的信息进行解释。例如:myFile\java.txt
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-03-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.1 File 类概述和构造方法
    • 1. File 类介绍
      • 2. File 类的构造方法
        • 3. 示例代码
          • 1.2 File类创建功能
            • 1. 方法分类
            • 2. 示例代码
          • 1.3 File类判断和获取功能
            • 1. 判断功能
            • 2. 获取功能
            • 3. 示例代码
          • 1.4 File类删除功能
            • 1. 方法分类
            • 2. 示例代码
            • 3. 绝对路径和相对路径的区别
        相关产品与服务
        腾讯云服务器利旧
        云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档