File类

1. File类概述和构造方法

File类的作用
文件和目录名路径的抽象表示形式。
File封装的并不是一个真正存在的文件。
仅仅是一个路径名,它可以存在,也可以不存在。
后面需要通过对应的方法将其变成真正存在的。
File类的构造方法
File(String pathName) 根据字符串路径创建一个File对象
File(String parent,String child) 根据字符串父级路径和子级路径创建File对象
File(File parent,String child) 根据File类型父级路径和字符串子级路径创建File对象

使用File(String pathName)创建对象
使用File(String parent,String child)创建对象
使用File(File parent,String child)创建对象

import java.io.File;

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

    构造方法:
        File(String pathname):通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
        File(String parent, String child):从父路径名字符串和子路径名字符串创建新的 File实例。
        File(File parent, String child):从父抽象路径名和子路径名字符串创建新的 File实例。
 */
public class FileDemo01 {
    public static void main(String[] args) {
        //File(String pathname):通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
        File file = new File("D:\\develop\\第二");
        System.out.println(file);
        //File(String parent, String child):从父路径名字符串和子路径名字符串创建新的 File实例。
        File file1 = new File("D:\\develop", "第二");
        System.out.println(file1);
        //File(File parent, String child):从父抽象路径名和子路径名字符串创建新的 File实例。
        File file2 = new File("D:\\develop");
        File file3 = new File(file2, "第二");
        System.out.println(file3);
    }
}

2. File类创建功能

File类的创建功能
boolean createNewFile() 创建一个新文件
boolean mkdir() 创建单级文件夹
boolean mkdirs() 创建多级文件夹

package lainxi01File;

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

/*
    File类创建功能:
        public boolean createNewFile():当具有该名称的文件不存在时,创建一个由该抽象路径名命名的新空文件
        public boolean mkdir():创建由此抽象路径名命名的目录
        public boolean mkdirs():创建由此抽象路径名命名的目录,包括任何必需但不存在的父目录
 */
public class FileDemo02 {
    public static void main(String[] args) throws IOException {
        //需求1:我要在E:\\itcast目录下创建一个文件java.txt
        File f0 = new File("E:\\itcast\\java.txt");
        boolean flag = f0.createNewFile();
        System.out.println(false);
        //需求2:我要在E:\\itcast目录下创建一个目录JavaSE
        File f1 = new File("E:\\itcast\\JavaSE");
        boolean flag1 = f1.mkdir();
        //需求3:我要在E:\\itcast目录下创建一个多级目录E:\\itcast
        File f2 = new File("E:\\itcast\\itcast");
        boolean flag2 = f2.mkdirs();
        //需求4:我要在E:\\itcast目录下创建一个文件java.txt
        File file = new File(f2, "java.xtx");
        boolean newFile = file.createNewFile();

    }
}

3. File类判断和获取功能

File类的判断方法
boolean isDirectory() 判断是否是文件夹
boolean isFile() 判断是否是文件
boolean exists() 判断文件是否存在
File类的获取方法
String getAbsolutePath() 获取绝对路径
String getPath() 获取构造方法中的路径
String getName() 获取文件或文件夹的名称
String[] list() 获取目录下所有内容,返回字符串数组
File[] listFiles() 获取目录下所有内容,返回File对象数组

package lainxi01File;

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

/*
    File类的判断和获取功能:
        public boolean isDirectory():测试此抽象路径名表示的File是否为目录
        public boolean isFile():测试此抽象路径名表示的File是否为文件
        public boolean isFile():测试此抽象路径名表示的File是否为文件

        public String getAbsolutePath():返回此抽象路径名的绝对路径名字符串
        public String getPath():将此抽象路径名转换为路径名字符串
        public String getName():返回由此抽象路径名表示的文件或目录的名称

        public String[] list():返回此抽象路径名表示的目录中的文件和目录的名称字符串数组
        public File[] listFiles():返回此抽象路径名表示的目录中的文件和目录的File对象数组
 */
public class FileDemo04_01 {
    public static void main(String[] args) throws IOException {
        //添加文件
        File file1 = new File("day08\\java.txt");
        //public boolean isDirectory():测试此抽象路径名表示的File是否为目录
        System.out.println(file1.isDirectory());
        //创建文件
        boolean newFile1 = file1.createNewFile();

        //public boolean isFile():测试此抽象路径名表示的File是否为文件
        System.out.println(file1.isDirectory());
        //public boolean isFile():测试此抽象路径名表示的File是否为文件
        System.out.println(file1.isFile());
//        public String getAbsolutePath():返回此抽象路径名的绝对路径名字符串
        //添加文件
        File file2 = new File("F:\\kwifi");
        System.out.println(file2.getAbsolutePath());
        //public String getPath():将此抽象路径名转换为路径名字符串
        System.out.println(file2.getPath());
        //public String getName():返回由此抽象路径名表示的文件或目录的名称
        System.out.println(file2.getName());
        System.out.println("=====================");
//        public String[] list():返回此抽象路径名表示的目录中的文件和目录的名称字符串数组
        String[] list = file2.list();
        for (String s : list) {
            System.out.println(s);
        }
//        public File[] listFiles():返回此抽象路径名表示的目录中的文件和目录的File对象数组
        System.out.println("===================");
        File[] files = file2.listFiles();
        for (File file : files) {
            //System.out.println(file);
            System.out.println(file.getName() + file.getAbsolutePath());
        }
    }
}

4. File类删除功能

File类删除功能
File类的删除方法
boolean delete() 删除文件或文件夹(文件夹必须为空)
绝对路径和相对路径
绝对路径:完整的路径,从盘符开始
相对路径:相对于当前项目工作空间下
(谨慎使用 ,直接彻底删除,不经过回收站)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值