java.io.File详解

io

类文件

  • 实现接口:
    可序列化的, 类似的< 文件>


    public class File
    extends Object
    implements Serializable, Comparable<File>
    文件和目录路径名的抽象表示。

    用户界面和操作系统使用系统的文件和目录路径名字符串名称。这个类提供了一个抽象的、系统的分层路径名。一个抽象路径名有两个组件:

    1. 一个可选的系统的前缀字符串,如磁盘驱动器说明符, "/"UNIX根目录,或 "\\\\"Microsoft Windows UNC路径名,
    2. 一系列的零个或多个字符串的名字。
    抽象路径名的名字可能是一个目录名称,或者在Microsoft Windows UNC路径名的情况下,一个主机名。每个后续的名称在抽象路径名表示的目录中;姓可以表示一个目录或一个文件中。空抽象路径名没有前缀和一个空的名字顺序。

    转换或从抽象路径名的路径名字符串本身是与系统相关的。当抽象路径名转换为一个路径名字符串,每个名称由单一的副本分开下默认的分隔符。默认名separator角色定义的系统属性 file.separator,并提供在公共静态字段 separator separatorChar这个类的。当一个路径名字符串转换为抽象路径名,其中的名字可能会被默认名separator字符或其他名separator底层系统支持的角色。

    抽象路径名,或者以字符串形式,可以是绝对的还是相对的。绝对路径名是完整的,不需要其他信息来定位文件,它表示。相反,相对路径名必须解释的信息从其他路径名。默认情况下,类中 java.io包总解决对当前用户目录的相对路径名。这个目录是系统属性命名 user.dir的目录,通常调用Java虚拟机。

    抽象路径名的母公司可能得到调用 getParent()这个类的方法,由路径名的前缀和路径名的名称序列中的每个名称除了最后一个。每个目录的绝对路径名是一个祖先的文件对象与绝对抽象路径名开始目录的绝对路径名。例如,抽象路径名表示的目录“/ usr目录用的是一个祖先的路径“/ usr /地方/ bin”。

    前缀概念是在UNIX平台上,用于处理根目录和说明符,根目录和Microsoft Windows平台上的UNC路径名,如下:

    • 对于UNIX平台上,总是绝对路径名的前缀 "/"。相对路径名没有前缀。抽象路径名表示根目录前缀 "/"和一个空序列名称。
    • 对于Microsoft Windows平台,包含一个驱动器说明符的路径名的前缀由驱动器紧随其后 ":"并可能紧随其后 "\\"如果路径名是绝对的。UNC路径名的前缀 "\\\\";主机名和共享名称序列中的第一个两个名字的名字。相对路径名不指定一个驱动没有前缀。

    这个类的实例可能或不可能表示一个实际的文件系统对象如一个文件或目录。如果它表示这样一个对象,对象驻留在一个分区。一个分区是一个操作系统特定的存储文件系统的一部分。一个单一的存储设备(例如一个物理磁盘驱动器、闪存、cd - rom)可能包含多个分区。的对象,如果有的话,将驻留在分区命名一些祖先的绝对路径名的形式。

    一个文件系统可以实现某些操作在实际文件系统对象的限制,如阅读、写作、和执行。这些限制是统称为访问权限。文件系统可能有多个集单一对象的访问权限。例如,一组可能适用于对象的所有者,而另一个可能适用于所有其他用户。一个对象的访问权限可能会导致一些方法在这类失败。

    的实例 File类是不可变的;一旦创建,抽象路径名表示为一个 File对象永远不会改变。

    互操作性与 java.nio.file

     java.nio.file包定义了接口和类的Java虚拟机访问文件,文件属性,和文件系统。这个API可以用来克服许多的局限性 java.io.File类。的 toPath方法可用于获得 Path使用抽象的路径由一个 File对象来定位一个文件。由此产生的 Path可以使用吗 Files类来提供更有效和广泛的访问额外的文件操作,文件属性,帮助诊断错误和I / O例外当一个操作一个文件失败。

    自:
    JDK1.0
    参见:
    序列化形式
    • 字段汇总

      字段
      修饰符和类型场和描述
      static StringpathSeparator
      系统的路径分隔符字符,表示为一个字符串的便利。
      static charpathSeparatorChar
      系统的路径分隔符字符。
      static Stringseparator
      系统的默认名separator性格,为方便表示为一个字符串。
      static charseparatorChar
      系统的默认名separator性格。
    • 构造函数的总结

      构造函数
      构造函数和描述
      File(File parent, String child)
      创建一个新的  File实例从父母孩子抽象路径名和路径名字符串。
      File(String pathname)
      创建一个新的  File实例通过将给定路径名字符串转换为抽象路径名。
      File(String parent, String child)
      创建一个新的  File从父母路径名字符串实例和一个孩子路径名字符串。
      File(URI uri)
      创建一个新文件实例将给定的文件:URI为一个抽象的路径名。
    • 方法总结

      方法
      修饰符和类型方法和描述
      booleancanExecute()
      测试应用程序是否可以执行用此抽象路径名表示的文件。
      booleancanRead()
      测试应用程序是否可以读取文件用这种抽象的路径名。
      booleancanWrite()
      测试应用程序是否可以修改文件用这种抽象的路径名。
      intcompareTo(File pathname)
      比较两个抽象的路径名字母顺序进行。
      booleancreateNewFile()
      自动创建一个新的空文件被这个抽象路径名当且仅当一个文件,这个名字还不存在。
      static FilecreateTempFile(String prefix, String suffix)
      在默认临时文件目录中创建一个空文件,使用给定的前缀和后缀来生成它的名字。
      static FilecreateTempFile(String prefix, String suffix, File directory)
      创建一个新的空文件在指定的目录中,使用给定的前缀和后缀字符串生成它的名字。
      booleandelete()
      删除文件或目录用这种抽象的路径名。
      voiddeleteOnExit()
      请求的文件或目录用这个抽象路径名在虚拟机终止时被删除。
      booleanequals(Object obj)
      测试此抽象路径名的平等与给定的对象。
      booleanexists()
      检查文件或目录是否用这个抽象路径名的存在。
      FilegetAbsoluteFile()
      返回此抽象路径名的绝对形式。
      StringgetAbsolutePath()
      返回此抽象路径名的绝对路径名字符串。
      FilegetCanonicalFile()
      返回此抽象路径名的规范形式。
      StringgetCanonicalPath()
      返回此抽象路径名的规范路径名字符串。
      longgetFreeSpace()
      返回的分区中未分配的字节数 命名通过这种抽象的路径名。
      StringgetName()
      返回的文件或目录的名称用这种抽象的路径名。
      StringgetParent()
      返回此抽象路径名的路径名字符串的母公司或  null如果这个路径名不名一个父目录。
      FilegetParentFile()
      返回此抽象路径名的抽象路径名的家长,或  null如果这个路径名不名一个父目录。
      StringgetPath()
      将此抽象路径名转换为一个路径名字符串。
      longgetTotalSpace()
      返回分区的大小 命名通过这种抽象的路径名。
      longgetUsableSpace()
      返回此虚拟机可用的字节数的分区 命名通过这种抽象的路径名。
      inthashCode()
      计算哈希代码抽象路径名。
      booleanisAbsolute()
      测试此抽象路径名是否绝对的。
      booleanisDirectory()
      测试文件是否用这个抽象路径名是一个目录。
      booleanisFile()
      测试文件是否用这个抽象路径名是一个正常的文件。
      booleanisHidden()
      测试文件是否被这个抽象路径名是一个隐藏文件。
      longlastModified()
      返回文件的时间用这个抽象路径名是最后修改。
      longlength()
      返回文件的长度用这种抽象的路径名。
      String[]list()
      返回一个字符串数组命名目录中的文件和目录用这种抽象的路径名。
      String[]list(FilenameFilter filter)
      返回一个字符串数组的命名文件和目录用此抽象路径名表示的目录中满足指定过滤器。
      File[]listFiles()
      返回一个抽象路径名数组表示用此抽象路径名表示的目录中的文件。
      File[]listFiles(FileFilter filter)
      返回一个数组抽象路径名表示的目录中的文件和目录用这个抽象路径名满足指定过滤器。
      File[]listFiles(FilenameFilter filter)
      返回一个数组抽象路径名表示的目录中的文件和目录用这个抽象路径名满足指定过滤器。
      static File[]listRoots()
      列出可用的文件系统根。
      booleanmkdir()
      被这个抽象路径名创建目录。
      booleanmkdirs()
      由这个抽象路径名创建目录命名,包括任何必要的但不存在的父目录。
      booleanrenameTo(File dest)
      重命名文件用这种抽象的路径名。
      booleansetExecutable(布尔可执行)
      一个方便的方法来设置这个抽象路径名的所有者的执行权限。
      booleansetExecutable(布尔可执行布尔ownerOnly)
      集所有者或每个人都对这个抽象路径名的执行权限。
      booleansetLastModified(长时间)
      设置文件或目录的最后修改时间被这抽象的路径名。
      booleansetReadable(布尔可读)
      一个方便的方法来设置这个抽象路径名的所有者的读权限。
      booleansetReadable(布尔ownerOnly布尔可读)
      集所有者或每个人都对这个抽象路径名的读权限。
      booleansetReadOnly()
      标志着文件或目录被这个抽象路径名,只允许读取操作。
      booleansetWritable(布尔可写)
      一个方便的方法来设置这个抽象路径名的所有者的写权限。
      booleansetWritable(布尔ownerOnly布尔可写)
      集所有者或每个人都对这个抽象路径名的写权限。
      PathtoPath()
      返回一个  java.nio.file.Path对象由这个抽象路径。
      StringtoString()
      返回此抽象路径名的路径名字符串。
      URItoURI()
      构造一个文件:URI表示此抽象路径名。
      URLtoURL()
      弃用。
      这个方法不会自动转义字符在url是非法的。建议新代码抽象路径名转换为一个URL,首先将它转换成一个URI,通过 toURI方法,然后通过将URI转换为URL URI.toURL方法。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值