File类方法整理

File类方法整理

File类的对象是文件和目录路径名的抽象表示,但是File类的对象表示的文件和目录路径名不一定存在,可以没有,当没有的时候就可以通过File的方法去创建这个新文件。

本文就对File类中一些常用的方法进行了整理。

构造方法

  1. File(File parent, String child)

    从父抽象路径名和子路径名字符串创建新的 File实例。

  2. File(String pathname)

    通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。

  3. File(String parent, String child)

    从父路径名字符串和子路径名字符串创建新的 File实例。

  4. File(URI uri)

    通过将给定的 file: URI转换为抽象路径名来创建新的 File实例。

方法

1.createNewFile()
  • 创建文件。当且仅当此文件的名称不存在时,创建由此抽象路径名命名的新空文件,并返回true,否者返回false。

  • 形式:

    public boolean createNewFile() throws IOException
    
  • 异常:

    IOException - 如果发生I / O错误 。
    SecurityException - 如果存在安全管理器且其 SecurityManager.checkWrite(java.lang.String)方法拒绝对文件的写访问权限 。

    File file = new File("F://文件名.md");      //此时这个 文件名 是不存在的
    boolean flag = file.createNewFile();       //创建文件
    
2.mkdir()
  • 创建文件夹。创建此抽象路径名指定的目录。当且仅当目录已创建时,返回true,否者false。

  • 形式:

    public boolean mkdir()
    
  • 异常:

    SecurityException - 如果存在安全管理器且其 SecurityManager.checkWrite(java.lang.String)方法不允许创建指定目录

3.delete()
  • 删除此抽象路径名表示的文件或目录。 如果此路径名表示目录,则该目录必须为空才能被删除。 当且仅当文件或目录被成功删除时,返回true; 否则返回false 。

  • 形式:

    public boolean delete()
    

#####4.getAbsolutePath()

  • 返回此抽象路径名的绝对路径名字符串。

  • 形式:

    public String getAbsolutePath()
    

#####5.getAbsoluteFile()

  • 返回此抽象路径名的绝对形式。 相当于new File(this.getAbsolutePath()) 。

  • 形式:

    public File getAbsoluteFile()
    
6.getName()
  • 返回此抽象路径名表示的文件或目录的名称。 这只是路径名称序列中的姓氏。 如果路径名的名称序列为空,则返回空字符串。

  • 形式:

    public String getName()
    
7.getParent()
  • 返回此抽象路径名父项的路径名字符串,如果此路径名未指定父目录,则返回null 。

  • 形式:

    public String getParent()
    
8.getParentFile()
  • 返回此抽象路径名父项的抽象路径名,如果此路径名未指定父目录,则返回null 。

  • 形式:

    public File getParentFile()
    

#####9.getPath()

  • 将此抽象路径名转换为路径名字符串。

  • 形式:

    public String getPath()
    
10.length()
  • 返回此抽象路径名表示的文件的长度。 如果此路径名表示目录,则返回值未指定。

    此抽象路径名表示的文件的长度(以字节为单位),如果该文件不存在, 0L 。 对于表示系统相关实体(如设备或管道)的路径名,某些操作系统可能会返回0L 。

  • 形式:

    public long length()
    
11.exists()
  • 测试此抽象路径名表示的文件或目录是否存在。

    当且仅当此抽象路径名表示的文件或目录存在时返回true; 否则为false

  • 形式:

    public boolean exists()
    
12.isFile()
  • 测试此抽象路径名表示的文件是否为普通文件。

    当且仅当此抽象路径名表示的文件存在并且是普通文件时返回true; 否则为false

  • 形式:

    public boolean isFile()
    
13.isDirectory()
  • 测试此抽象路径名表示的文件是否为目录。 即是否是文件夹。

    当且仅当此抽象路径名表示的文件存在并且是目录时返回true; 否则为false

  • 形式:

    public boolean isDirectory()
    
14.isHidden()
  • 测试此抽象路径名指定的文件是否为隐藏文件。

  • 形式:

    public boolean isHidden()
    
15.list()
  • 形式:

    /*1.返回一个字符串数组,用于命名此抽象路径名表示的目录中的文件和目录。 
    如果此抽象路径名不表示目录,则此方法返回null 。 否则返回一个字符串数组,一个用于目录中的每个文件或目录。 表示目录本身的名称和目录的父目录不包含在结果中。 每个字符串都是文件名而不是完整路径。 无法保证结果数组中的名称字符串将以任何特定顺序出现; 特别是,它们不能保证按字母顺序出现。*/
    public String[] list()
        
    /*2返回一个字符串数组,用于命名由此抽象路径名表示的目录中的文件和目录,以满足指定的过滤器。 此方法的行为与list()方法的行为相同,只是返回的数组中的字符串必须满足过滤器。 如果给定的filter是null则接受所有名称。 否则,当且仅当在此抽象路径名上调用过滤器的FilenameFilter.accept(File, String)方法以及其表示的目录中的文件或目录的名称时,才会生成值true的名称。 
    */
    public String[] list​(FilenameFilter filter)
    
16.listFiles()
  • 返回一个抽象路径名数组,表示此抽象路径名表示的目录中的文件。

    如果此抽象路径名不表示目录,则此方法返回null 。 否则返回File对象的数组,每个文件或目录对应一个对象。 表示目录本身的路径名和目录的父目录不包含在结果中。 每个生成的抽象路径名都是使用File(File, String)构造函数从此抽象路径名构造的。 因此,如果此路径名是绝对的,那么每个结果路径名都是绝对的; 如果此路径名是相对的,则每个结果路径名将相对于同一目录。

    无法保证结果数组中的名称字符串将以任何特定顺序出现; 特别是,它们不能保证按字母顺序出现。

  • 形式:

    //1.
    public File[] listFiles()
    //2.  参数:filter - 文件名过滤器 
    public File[] listFiles(FilenameFilter filter)
    //3.  参数:filter - 文件过滤器 
    public File[] listFiles(FileFilter filter)
    
17.mkdirs()
  • 创建此抽象路径名指定的目录,包括任何必需但不存在的父目录。 请注意,如果此操作失败,则可能已成功创建一些必需的父目录。 用于创建有多个父目录的文件,且这些父目录都不存在。

  • 形式:

    public boolean mkdirs()
    
18.renameTo()
  • 重命名此抽象路径名表示的文件。 可以将一个文件从一个目录移动到另一个目录里面

    当且仅当重命名成功时返回true,否者false。

  • 形式:

    public boolean renameTo(File dest)
    
  • 实现代码:

    File file = new File("原来的抽象路径名");
    File newfile = new File("新的抽象路径名");
    file.renameTo(newfile);
    

字段

由于Java是一门跨平台的语言,不同的操作系统是有差异的,在使用分隔符时,不一样的平台可能会识别不了,就无法运行,所以Java就提供了分隔符和名称分隔符:

  • pathSeparator:( ; )

    与系统相关的路径分隔符,为方便起见,表示为字符串。

  • separator:( \ )

    系统相关的默认名称分隔符,为方便起见,表示为字符串。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值