JAVA 的FILE类,以及常用方法

文件和文件夹都是用File代表

  • 创建一个文件对象
    使用绝对路径或者相对路径创建File对象

    import java.io.File;
      
    public class TestFile {
      
        public static void main(String[] args) {
            // 绝对路径
            File f1 = new File("d:/LOLFolder");
            System.out.println("f1的绝对路径:" + f1.getAbsolutePath());
            // 相对路径,相对于工作目录,如果在eclipse中,就是项目目录
            File f2 = new File("LOL.exe");
            System.out.println("f2的绝对路径:" + f2.getAbsolutePath());
      
            // 把f1作为父目录创建文件对象
            File f3 = new File(f1, "LOL.exe");
      
            System.out.println("f3的绝对路径:" + f3.getAbsolutePath());
        }
    }
    

  • 文件常用方法1
    注意1: 需要在D:\LOLFolder确实存在一个LOL.exe,才可以看到对应的文件长度、修改时间等信息

    注意2: renameTo方法用于对物理文件名称进行修改,但是并不会修改File对象的name属性。

    import java.io.File;
    import java.util.Date;
     
    public class TestFile {
     
        public static void main(String[] args) {
     
            File f = new File("d:/LOLFolder/LOL.exe");
            System.out.println("当前文件是:" +f);
            //文件是否存在
            System.out.println("判断是否存在:"+f.exists());
            
            //是否是文件夹
            System.out.println("判断是否是文件夹:"+f.isDirectory());
             
            //是否是文件(非文件夹)
            System.out.println("判断是否是文件:"+f.isFile());
             
            //文件长度
            System.out.println("获取文件的长度:"+f.length());
             
            //文件最后修改时间
            long time = f.lastModified();
            Date d = new Date(time);
            System.out.println("获取文件的最后修改时间:"+d);
            //设置文件修改时间为1970.1.1 08:00:00
            f.setLastModified(0);
             
            //文件重命名
            File f2 =new File("d:/LOLFolder/DOTA.exe");
            f.renameTo(f2);
            System.out.println("把LOL.exe改名成了DOTA.exe");
            
            System.out.println("注意: 需要在D:\\LOLFolder确实存在一个LOL.exe,\r\n才可以看到对应的文件长度、修改时间等信息");
        }
    }
    
  • 文件常用方法2
    import java.io.File;
    import java.io.IOException;
      
    public class TestFile {
      
        public static void main(String[] args) throws IOException {
      
            File f = new File("d:/LOLFolder/skin/garen.ski");
      
            // 以字符串数组的形式,返回当前文件夹下的所有文件(不包含子文件及子文件夹)
            f.list();
      
            // 以文件数组的形式,返回当前文件夹下的所有文件(不包含子文件及子文件夹)
            File[]fs= f.listFiles();
      
            // 以字符串形式返回获取所在文件夹
            f.getParent();
      
            // 以文件形式返回获取所在文件夹
            f.getParentFile();
            // 创建文件夹,如果父文件夹skin不存在,创建就无效
            f.mkdir();
      
            // 创建文件夹,如果父文件夹skin不存在,就会创建父文件夹
            f.mkdirs();
      
            // 创建一个空文件,如果父文件夹skin不存在,就会抛出异常
            f.createNewFile();
            // 所以创建一个空文件之前,通常都会创建父目录
            f.getParentFile().mkdirs();
      
            // 列出所有的盘符c: d: e: 等等
            f.listRoots();
      
            // 刪除文件
            f.delete();
      
            // JVM结束的时候,刪除文件,常用于临时文件的删除
            f.deleteOnExit();
      
        }
    }




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值