File类
File是java.io包下表示与平台无关的文件和目录,也就是说如果希望在程序中操作文件和目录都可以通过File类来完成,值得指出的是不管是文件还是目录都是使用File来操作,File能新建、删除和重命名文件和目录。File不能访问文件内容本身,如果需要访问文件内容本身,则需要使用输入,输出流
访问文件和目录
File类可以使用文件路径字符串来创建File实例,该文件路径字符串,可以是绝对路径也可以是相对路径,默认情况下,系统总是根据用户的工作路径来解释相对路径,这个路径有系统属性”user.dir”,通常也是Java虚拟机运行时所在的路径
一旦创建了File对象就可以通过此对象的方法来操作文件和目录
访问文件名的相关方法
- String getName():返回此对象的所表示的文件名或路径名(如果是路径的话,返回最后一级子路径名)
- String getPath():返回File对象所定义的路径名
- File getAbsoluteFile():返回此File所对应的绝对路径所对应的File对象
- String getAbsolutePath():返回此File对象所对应的绝对路径名
- String getParent():返回此File对象对应目录(最后一级子目录)的父目录名
- boolean renameTo(File newName):重命名此File对象 对应的文件或目录,成功返回true;
文件检测相关的方法
- boolean exits():判断File对象对应的目录或文件是否存在
- boolean canWrite():判断File对象对应的目录或者文件是否存在
- boolean canRead():判断File对象对应的目录或文件是否可读
- boolean isFile():判断此File是否是文件而不是目录
- bolean isDirectory():判断File对象是否是目录而不是文件
- boolean isAbsolute():判断File对象所对应的文件或目录是否是绝对路径。该方法消除了不同平台的差异,可以直接判断File对象是否为绝对路径。在Unix、Linux、BSD等系统上如果路径名开始是/,则表示这是绝对路径,在window系统上如果开头是盘符,则是绝对路径
获取常规文件的信息
- long lastModified():返回文件的最后修改时间
- long length():返回文件内容的长度
文件操作的相关方法
- boolean createNewFile():当此File对象对应的文件不存在时,该方法创建一个该File对象指定的文件,创建成功返回true
- boolean delete():删除File对象所对应的文件或目录
- static File createTempFile(String prefix,String subffix):在默认临时文件目录中创建一个临时的空文件,使用给定前缀,系统生成的随机数和给定后缀作为文件名。这是一个静态方法,可以通过File类之间调用.prefix必须是三个字节长,subffix可以为null,在这种情况下,默认后缀为.tmp
- static File createTempFile(String prefix,String buffix,File directory):在指定的目录中创建一个临时的空文件,使用给定前缀,系统生成的随机数和给定的后缀作为文件名。这是一个静态方法,尅通过File类直接调用
- void deleteOnExit():注册一个删除钩子,指定当Java虚拟机退出时,删除File所对应的目录和文件
- boolean mkdir():试图创建一个File对象对应的目录,如果创建成功返回为true,否则返回false,注意File对象对应的是一个路径,而不是一个文件
- String[] list():列出File对象对应的子文件和路径名,返回一个String数组
- File[] listFiles(():列出File对系那个对应的所有子文件和路径,返回一个File数组
- static listRoots():列出系统所有的根路径。这是一个静态方法,可以通过File类来调用