一:File类提供了一种抽象,这种抽象是指以不依赖机器的方式来处理很多文件和路径名依赖机器的复杂问题。 File类包含了许多获取文件属性的方法以及重命名和删除文件的方法,如下。但是,File类不包含读写文件的方法。
构造方法摘要 | |
File(File parent, String child) 这个child可以使一个文件名也可以是一个子目录 这个parent是一个File对象 | |
File(String pathname) 这里的路径名可以是一个目录也可以是一个文件 | |
File(String parent, String child) 这个parent为一个目录 | |
File(URI uri) 通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例 |
getParent() :String File("C:\\book\\test.dat").getParent() 返回C:\book |
getName() : String 返回File对象表示的完整路径名和文件名的最后一个名字。例如File("C:\\book\\test.dat").getNamet()返回test.dat
返回由此抽象路径名表示的文件或目录的名称。
getPath():String File("C:\\book\\test.dat").getPath()返回C:\book\test.dat
将此抽象路径名转换为一个路径名字符串。
listFiles() :File[] 返回一个File对象目录下的文件 |
listFiles(FileFilter filter) |
文件名是一个字符串。File类是文件名及其目录路径的一个包装器。例如,在Windows中,语句new File("c:\\book")在目录c:\\book下创建一个File对象,而语句new File("c:\book\test.dat")为文件c:\book\test.dat创建一个File对象。可以用File类的isDirectory()方法来判断这个对象是否表示一个目录,还可以用isFile()方法来判断这个对象是否表示一个文件名。
注意: 在Windows中目录的分隔符是反斜杠\ 。但是在Java中,反斜杠是一个特殊字符, 应该写成\\ 的形式。
注意: 构建一个File实例并不会在机器上创建一个文件,不管文件是否存在,都可以创建任意文件名的File实例。可以调用File实例上的exists()方法来判断这个文件是否存在。
在程序中最好不要直接使用绝对文件名。如果使用了像"c:\\book\\Welcome.java"之类的文件名,那么它能在Windows上工作,但是不能在其他平台上工作。 应该使用与当前目录相关的文件名。例如可以使用 new File("Welcome.java")为在当前目录下的文件Welcome.java创建一个File对象。 可以使用new File("image/us.gif")为在当前目录下的image目录下创建一个File对象。 斜杠/ 是Java的目录分隔符,这点和Unix是一样的。 语句new File("image/us.gif")在Windows、Unix活任何其他系统上都能工作。