【JavaEE多线程】Java 文件操作


Java中操作文件

Java 中通过 java.io.File类来对一个文件(包括目录)进行抽象的描述。注意,有 File 对象,并不代表真实存在该文件。

文件系统操作

创建文件、删除文件、创建目录

通过File对象来描述一个具体的文件,File对象可以对应到一个真实存在的文件,也可以对应到一个不存在的文件

File概述

属性
修饰符及类型 属性 说明
static String pathSeparator 依赖于系统的路径分隔符,String 类型的表示
static char pathSeparator 依赖于系统的路径分隔符,char 类型的表示
构造方法
签名 说明
File(File parent, String child) 根据父目录 + 孩子文件路径,创建一个新的 File 实例
File(String pathname) 根据文件路径创建一个新的 File 实例,路径可以是绝对路径或者相对路径
File(String parent, String child) 根据父目录 + 孩子文件路径,创建一个新的 File 实例,父目录用路径表示
方法
修饰符及返回值类型 方法签名 说明
String getParent() 返回 File 对象的父目录文件路径
String getName() 返回 FIle 对象的纯文件名称
String getPath() 返回 File 对象的文件路径
String getAbsolutePath() 返回 File 对象的绝对路径
String getCanonicalPath() 返回 File 对象的修饰过的绝对路径
boolean exists() 判断 File 对象描述的文件是否真实存在
boolean isDirectory() 判断 File 对象代表的文件是否是一个目录
boolean isFile() 判断 File 对象代表的文件是否是一个普通文件
boolean createNewFile() 根据 File 对象,自动创建一个空文件。成功创建后返回 true
boolean delete() 根据 File 对象,删除该文件。成功删除后返回 true
void deleteOnExit() 根据 File 对象,标注文件将被删除,删除动作会到 JVM 运行结束时才会进行
String[] list() 返回 File 对象代表的目录下的所有文件名
File[] listFiles() 返回 File 对象代表的目录下的所有文件,以 File 对象表示
boolean mkdir() 创建 File 对象代表的目录
boolean mkdirs() 创建 File 对象代表的目录,如果必要,会创建中间目录
boolean renameTo(File dest) 进行文件改名,也可以视为我们平时的剪切、粘贴操作
boolean canRead() 判断用户是否对文件有可读权限
boolean canWrite() 判断用户是否对文件有可写权限

观察 get 系列的特点和差异

//File的使用
public class Demo1 {
   
    public static void main(String[] args) throws IOException {
   
        File file=new File("./test.txt");
        System.out.println(file.getParent());
        System.out.println(file.getName());
        System.out.println(file.getPath());
        System.out.println(file.getAbsolutePath());
        System.out.println(file.getCanonicalFile());
    }
}

//运行结果
.
test.txt
.\test.txt
C:\Users\幽琴健\java_Code\giteedemo\system_code\.\test.txt
C:\Users\幽琴健\java_Code\giteedemo\system_code\test.txt

普通文件的创建

public class Demo2 {
   
    public static void main(String[] args) throws IOException {
   
        File file=new File("./test.txt");

        //创建文件
        file.createNewFile();

        System.out.println(file.exists());
        System.out.println(file.isFile());
        System.out.println(file.isDirectory());
    }
}

//运行结果
true
true
false

普通文件的删除

//文件删除
public class Demo3 {
   
    public static void main(String[] args) throws InterruptedException, IOException {
   
        File file =new File("./test.txt");
        System.out.println(file.createNewFile());
        //System.out.println(file.delete());

        //是等到程序退出了再删除,不是立即删除;
        file.deleteOnExit();
        System.out.println(file.exists());
        Thread.sleep(5000);
    }
}

//运行结果
true
true

观察目录的创建1

public class Demo4 {
   
    public static void main(String[] args) {
   
        File file=new File("./testDir");// 要求该目录不存在,才能看到相同的现象

        System.out.println(file.mkdir());
        System.out.println(file.isDirectory());
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值