Java File类的介绍及常用方法的使用

一、File类的介绍:

1.1 简介:

java.io.File类是文件和目录路径名称的抽象表示,主要用于文件和目录的创建、查找和删除等操作

1.2 File类构造方法:

常用的有三种:

1. File(String pathname):通过路径名创建一个新 File 实例(对象)。

2. File(File parent, String child):根据父目录路径File实例和子目录或文件路径创建一个新 File 实例。

3. File(String parent, String child) :根据父目录路径和子目录或文件路径创建一个新 File 实例。

 例题:


public class Work {
	public static void main(String[] args){
	
		File file = new File("E:\\网易有道词典\\Youdao\\Dict\\guid.dat"); //第一种方式。
		System.out.println(file.getPath()); //getPath()返回该file的路径。
		
		file=new File(new File("E:\\网易有道词典\\Youdao"),"Dict\\guid.dat"); //第二种方式。
		System.out.println(file.getPath());‘
		
		file=new File("E:\\网易有道词典\\Youdao\\Dict","guid.dat"); //第三种方式。
		System.out.println(file.getPath());
	}

运行结果:
E:\网易有道词典\Youdao\Dict\guid.dat
E:\网易有道词典\Youdao\Dict\guid.dat
E:\网易有道词典\Youdao\Dict\guid.dat

1.3 创建和删除文件

File 类不仅可以获取已知文件的属性信息,还可以在指定路径创建文件,以及删除一个文件。创建文件需要调用 createNewFile() 方法删除文件需要调用 delete() 方法。无论是创建还是删除文件通常都先调用 exists() 方法判断文件是否存在

例 题:

创建一个a.txt的文件,要求把文件存放在D盘中的aa/bb/cc的目录中

实现代码如下:

import java.io.File;
import java.io.IOException;

public class FileTest {
    public static void main(String[] args) throws IOException {
        //题目:创建一个a。txt的文件,要求把文件存放在D盘中的aa/bb/cc的目录中
        File f1=new File("D:/aa/bb/cc");
        File f2=new File(f1,"a.txt");
        f1.mkdirs();
        f2.createNewFile();

    }
}

1.4创建和删除目录

File 类除了对文件的创建和删除外,还可以创建和删除目录。创建目录需要调用 mkdir() 方法,删除目录需要调用 delete() 方法。无论是创建还是删除目录都可以调用 exists() 方法判断目录是否存在。

例题:

编写一个程序判断 C 盘根目录下是否存在 con目录,如果存在则先删除再创建。实现代码如下:

public class Test04 {
    public static void main(String[] args) {
        String path = "C:/con/"; // 指定目录位置
        File f = new File(path); // 创建File对象
        if (f.exists()) {
            f.delete();
        }
        f.mkdir(); // 创建目录
    }
}

二、file常用方法的使用

2.1 创建

  • createNewFile()指定路径不存在该文件时创建一个空文件,成功就返回true,如果已存在就不创建,然后返回false。
  • mkdir() 在指定路径下创建一个之前没有的文件夹成功返回true;当不存在此路径时,创建失败返回false。
  • mkdirs() 在指定路径下创建一个之前不存在的多级文件夹(路径不存在时创建出来)并返回true 否则false。

2.2 删除

delete() 删除文件或者一个空文件夹,不能删除非空文件夹,马上删除文件,返回一个布尔值。

deleteOnExit()jvm退出时删除文件或者文件夹,用于删除临时文件,无返回值。

2.3 判断

  • exists() 文件或文件夹是否存在。
  • isHidden() 是否是一个隐藏的文件或是否是隐藏的目录。
  • isAbsolute() 测试此抽象路径名是否为绝对路径名。
  • isDirectory() 判断此File对象代表的路径表示是不是文件夹,只有File对象代表路径存在且是一个目录时才返回true,否则返回false。
  • isFile()判断此File对象代表的路径是否是一个标准文件,只有File对代表路径存在且是一个标准文件时才返回true,否则返回false。

2.4 获取

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

 例题:

import java.io.File;
import java.io.IOException;

public class Work {

	public static void main(String[] args) throws IOException{
		File file = new File("D:\\Tom\\Jim.txt");
		
		System.out.println(file.renameTo(new File("D:\\Tom\\Jom.txt"))); //7、改名,括号中必须是File实例。
		
		Boolean flag = new File("D:\\Tom\\Lacy").mkdir(); //8、创建一层文件夹。
		System.out.println(flag);
		
		flag = new File("D:\\Tom\\a\\b").mkdirs(); //9、可以创建多层文件夹。
		System.out.println(flag);
		
		flag = new File("D:\\Tom\\a.doxc").createNewFile(); //10、创建一层文件。
		System.out.println(flag);
		
		System.out.println(new File("D:\\Tom\\a.doxc").exists()); //11、判断该文件或者文件夹是否存在。
		
	}
}

 执行结果:


true
true
true
true
true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值