File文件类

2022-07-21  本文已影响0人  Jycoding

3.1概述

封装一个磁盘路径字符串,对这个路径可以执行一次操作

可以封装文件路径、文件夹路径、不存在的路径

3.2创建对象

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

new File(“d:/abc/a.txt”);

new File(“d:/abc”,”a.txt”);

3.3常用方法

package cn.tedu.file;

import java.io.File;

import java.io.IOException;

import java.util.Arrays;

/*本类用于测试文件类File*/

public class TestFile {

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

        //1.创建File类对象

        /*1.ready目录与1.txt需要自己手动创建

        * 2.File需要导包:import java.io.File;

        * 3.路径是String类型,必须写正确,不然找不到文件

        * 4.完整的文件名包含两部分:文件名+后缀名*/

        File file = new File("E:\\ready\\1.txt");

        //2.1测试File中的常用方法

        System.out.println(file.length());//3,获取文件的字节量

        System.out.println(file.exists());//true,判断文件是否存在

        System.out.println(file.isFile());//true,判断是否为文件

        System.out.println(file.isDirectory());//false,判断是否为文件夹

        System.out.println(file.getName());//1.txt获取文件名

        System.out.println(file.getParent());//E:\ready 获取父级路径

        System.out.println(file.getAbsolutePath());//E:\ready\1.txt 获取带盘符的完整路径:绝对路径

        //2.2 测试创建与删除

        /*new 只会帮你在内存中创建一个File类型的对象

        * 并不会帮你在磁盘中创建一个真实存在的2.txt文件*/

        file = new File("E:\\ready\\2.txt");

        //创建一个之前不存在的文件2.txt,如果创建成功,会返回true

        /*如果指定创建文件的路径不对,会抛出异常:java.io.Exception

        * 所以需要提前处理这个问题,我们暂时选择在main()上抛出

        * 这个IO异常是目前我们遇到的强制要求必须预先处理的异常

        * 如果不处理,方法的调用会报错,通不过编译*/

        System.out.println(file.createNewFile());//创建之前不存在的文件

        file = new File("E:\\ready\\m");

        System.out.println(file.mkdir());//创建之前不存在的单层文件夹

        file = new File("E:\\ready\\a\\b\\c");

        System.out.println(file.mkdirs());//创建之前不存在的多层文件夹

        System.out.println(file.delete());//c被删除,删除空文件夹或者文件

        file = new File("E:\\ready\\a");

        System.out.println(file.delete());//false,a文件夹不是空的,里面有内容

        file = new File("E:\\ready\\2.txt");

        System.out.println(file.delete());//2.txt被删除,可以删除文件

        //2.3测试展示文件列表

        file = new File("E:\\ready");

        String[] list = file.list();/*不常用*/

        System.out.println(Arrays.toString(list));

        //这句话会报错,因为这是一个String[],所以数组中每个元素都是String类型的

        //那么只能用String类中的方法,而isDirectory()是File类中的方法

        //System.out.println(list[0].isDirectory());

        File[] fs = file.listFiles();/*常用*/

        System.out.println(Arrays.toString(fs));

        System.out.println(fs[0].isDirectory());

    }

}

上一篇 下一篇

猜你喜欢

热点阅读