File对象(day21)


第二十一天 File对象   方法的递归

1. 为什么要使用File对象

        File对象将,磁盘,路径,文件夹,文件,全部包装成对象

        指挥File对象做事,IO流中,删除文件,创建文件夹等等这些操作不能完成,需要File来完成

       File对象,提供我们很多的属性和方法,来操作具体的路径,文件,或者是文件夹

       字符流,字节流这些类的构造方法,全部接收File对象

2. File对象的构造方法和静态常量

       File(File parent, String child) 

       File(String pathname) 

       File(String parent, String child) 

       static String separator  静态常量,目录分隔符,根据系统不同而不同 / \

       static String pathSeparator 静态常量,路径分隔符,多个路径之间分号分开  根据系统不同而不同; :

3. File对象的获取功能(后的list)

       File[] static listRoots() 获取磁盘下的跟目录

       String getName()  获取File对象中封装的文件夹名,或者文件名

       String getParent()  获取File对象封装的目录的父目录,没有父目录,返回null

       File getParentFile()  获取File对象封装的目录的父目录,没有父目录,返回null

       File getAbsoluteFile() 获取File对象中封装的路径的绝对路径

4. File对象的创建功能

       boolean createNewFile()创建File对象中封装的文件,有了就不创建,创建成功返回true

       boolean mkdir()创建File对象中封装的文件夹,有了就不创建,创建成功返回true

       boolean mkdirs()创建File对象中封装的多级文件夹,有了就不创建,创建成功返回true

5. File对象的删除功能

      boolean delete(),不走回收站,直接删除,删除File对象中封装的文件或者文件夹

      void deleteOnExit(),虚拟机终止前,删除File对象中封装的文件或者文件夹

6. File对象的判断功能

       boolean exists() 判断File对象封装的路径或者文件是否存在

       boolean isAbsolute() 判断File对象封装的路径,是绝对路径就返回true

       boolean isDirectory() 判断File对象封装的路径,是否是文件夹,是就返回true

       boolean isFile() 判断File对象封装的路径,是否是文件,是就返回true

       boolean isHidden()判断File对象封装的路径,是否是隐藏属性,是就返回true

7. File对象的其他功能

       long lastModified()返回File对象封装文件的最后修改时间的毫秒值

       boolean renameTo()修改文件名,如果修改后不在同一路径,出现剪切的效果

8. File对象中获取文件列表的功能

      String[] list() 获取File对象封装的路径下的全部文件和文件夹。包括隐藏的,返回是字符串

      File [] listFiles()获取File对象封装的路径下的全部文件和文件夹。包括隐藏的,返回File对象数据

           File[] listFiles(FileFilter filter)过滤文件名的  

           实现文件的过滤步骤:

        定义类,实现FileFilter接口,覆盖accept(File pathName)方法

  将pathName转成字符串,用endsWith("")判断,返回真,这个文件获取,如果返回假,这个文件不要

9. 递归

      方法的调用一种编程技巧

     从前有个山

     方法的自身调用,自己调用自己

     递归一定要有条件

     递归的次数不要过大,否则出现栈内存溢出

     递归的内存图,必须要会画

10. 递归删除文件夹  ***** File对象和方法的递归调用组合使用的案例  String

11. 复制单级目录 *****  File对象和IO流的结合使用,后期还会结合图形界面,网络编程 String


 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值