File类的常用方法


import java.io.File;

public class FileTest {

    public static void main(String[] args) {
        /**
         * 常用的构造方法有三种:
         * 1、File(String pathname):
         * 通过路径名创建一个新 File 实例。
         *
         * 2、File(File parent, String child):
         * 根据父目录路径File实例和子目录或文件路径创建一个新 File 实例。
         *
         * 3、File(String parent, String child) :
         * 根据父目录路径和子目录或文件路径创建一个新 File 实例。
         * ————————————————
         *  路径:
         *         绝对路径:是一个以盘符开始的完整的路径,可以直接通过绝对路径找到文件
         *             以盘符(C:,d:)开始的路径
         *                 c:/a.txt
         *                 F:\\JAVA\\notheme\\out\\production\\notheme\\calendar\\Calender.class
         *                 D:/demo/a.txt
         *         相对路径:是一个简化的路径,
         *              如果F:\\JAVA\\notheme\\out\\production\\notheme是当前项目的根目录
         *              那么F:\\JAVA\\notheme\\out\\production\\notheme\\a.txt就可以简写为a.txt
         *
         *              获取JAVA项目根目录的方法:
         * String relativelyPath = System.getProperty("user.dir")
         *
         *         注意:
         *             1。路径是不区分大小写的
         *             2.路径中的文件名称分隔符windows使用反斜杠,反斜杠\是转义字符,两个反斜杠\\代表一个普通斜杠/
         *             3.separator 用来代替文件或文件夹路径的斜线或反斜线,防止跨平台出现错误(很麻烦  很少用)
         * ————————————————
         */

        //1、File(String pathname):通过路径名创建一个新 File 实例。
        File file1 =new File("F:\\JAVA\\notheme\\out\\production\\notheme\\calendar.class");

        //2、File(File parent, String child):根据父目录路径File实例和子目录或文件路径创建一个新 File 实例。
        //就是把后面的child路径加上分隔符拼到第一个file实例的pathname后面
        File file2=new File(new File("F:\\JAVA\\notheme\\out\\production"),"notheme");

        //3、File(String parent, String child) :根据父目录路径和子目录或文件路径创建一个新 File 实例。
        File file3=new File("F:\\JAVA\\notheme\\out\\production","notheme\\calendar");

        //输出三个file实例的路径  都是一样的
        System.out.println(file1+"\n"+file2+"\n"+file3);


        /**
         * File类常用方法:
         * 大致有以下几种:
         *
         * 判断文件状态的
         * isDirectory() 是否为文件夹
         * isFile() 是否为文件
         * exists() 路径是否存在
         * canRead();是否可读
         * canWrite();是否可写
         */
        System.out.println(file1.isDirectory());
        System.out.println(file1.isFile());
        System.out.println(file1.exists());
        System.out.println(file1.canRead());
        System.out.println(file1.canWrite());

        /**
         *
         *得到文件信息的
         * getPath() 得到file的路径
         * getName() 得到最后一层的名字
         * getParent() 得到去掉最后一层的路径
         * list() 返回该路径下文件或者文件夹的名字数组
         * listFiles() 返回该路径下文件或者文件夹组成的File数组
         *
         */
        System.out.println(file1.getPath());
        System.out.println(file1.getName());
        System.out.println(file1.getParent());
        String[] list =file2.list();
        for(String s: list) {
            System.out.println(s);
        }
        File[] list2 =file2.listFiles();
        for(File f: list2) {
            System.out.println(f.getName());
        }


        /**
         * 增删改(不做示范了)
         * mkdir() 创建新文件夹,只能创建最后一层。 如果前面的文件夹没有 就创建不了
         * mkdirs() 创建新文件夹,如果路径中的文件夹不存在就创建.理论上只要路径里面带了盘符就能建
         * createNewFile() 当且仅当不存在具有此路径名指定名称的文件时,创建一个新的空文件
         * renameTo() 改名字,也可以改路径,参数是一个file对象,如果目标文件已经存在了,则返回false
         *              (renameTo不会产生新文件,只是把文件移动一下,或者改个名字)
         * delete() 删除文件或者目录(为空的目录)
         * 
         * 
         */
        
    }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值