Java IO(File类)

>概述

IO即输入(input)和输出(output),程序会往一些地方读取写入一些东西:

这些地方包括:

  1. 硬盘,文件系统+裸设备(只能存一个文件)
  2. 内存,byte[ ]
  3. 网络

>正则表达式的特殊字符及含义(这里是为了说明转义字符,当文件路径想写一个\,要写两个\\):

字符

解释

\t

制表符

\n

换行符

\r

回车符

$

匹配一行的结尾,如果要匹配$字符串,使用\$   

^

匹配一行的开始,如果要匹配^字符串,使用\^

()

标记子表达式的开始和结束位置,如果要匹配(或者)使用\( 或者\)

[]

用于确定中括号表达式的开始和结束位置。

{}

用于标记前面子表达式的出现频率

*

指定前面子表达式可以出现零次或多次

+

指定前面子表达式可以出现一次或者多次

指定前面子表达式可以出现零次或者一次

.

匹配除了换行符\n之外的任何单字符。

\

用于转义下一个字符。

|

指定两项之间任选一项。

>File类:用来描述一个文件或目录;

File是java.io包下代表与平台无关的文件和目录,则程序中操作文件和目录,都可以通过File类来完成。File能新建、删除、重命名文件和目录。File不能访问文件内容本身,如果访问文件内容本身,则需要使用输入/输出流。

构造方法摘要
File(File parent, String child)
          根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
File(String pathname)
          通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
File(String parent, String child)
          根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
File(URI uri)
          通过将给定的 file: URI 转换为一个抽象路径名来创建一个新的 File 实例。

File类可以使用文件路径字符串来创建File实例,该文件路径字符串既可以是绝对路径,也可以是相对路径。在默认情况下,系统总是依据用户的工作路径来解释相对路径。

创建File对象后,可以调用File对象的方法来访问。

常用的方法如下:

1、访问文件名相关的方法

  • String getName():返回此文件对象所表示的文件名或路径名。
  • String getPath():返回此File对象所对应的路径名。
  • File getAbsoluteFile():返回此File对象所对应的绝对路径指向的File对象。
  • String getAbsolutePath():返回此File对象所对应的绝对路径。
  • String getParent():返回此File对象所对应的目录的父目录,以工作路径为准,如果已经在工作路径的根目录下,则返回null,否则返回父目录。
  • boolean renameTo(File newName):重命名此File对象所对应的文件或目录,成功返回true,否则返回false。

2、文件检测相关的方法

  • boolean exists():判断File对象所对应的文件或目录是否存在。
  • boolean canWrite():判断File对象所对应的文件和目录是否可写。
  • boolean canRead():判断File对象所对应的文件和目录是否可读。
  • boolean isFile():判断File对象所对应的是否是文件。
  • boolean isDirectory():判断File对象所对应的是否是目录。
  • boolean isAbsolute():判断File对象所对应的文件或目录是否绝对路径。例如:如果在Unix/Linux等系统上,如果路径名的开头是/,则表明File对象对应一个绝对路径,在Windows等系统上,如果路径开头是盘符,则说明它是一个绝对路径。

 3、获取常规文件信息

  • long lastModified():返回文件的最后修改时间。
  • long length():返回文件内容的长度。

 4、文件操作相关的方法 

  • boolean exists():判断File对象所对应的文件或目录是否存在。
  • boolean canWrite():判断File对象所对应的文件和目录是否可写。
  • boolean canRead():判断File对象所对应的文件和目录是否可读。
  • boolean isFile():判断File对象所对应的是否是文件。
  • boolean isDirectory():判断File对象所对应的是否是目录。
  • boolean isAbsolute():判断File对象所对应的文件或目录是否绝对路径。例如:如果在Unix/Linux等系统上,如果路径名的开头是/,则表明File对象对应一个绝对路径,在Windows等系统上,如果路径开头是盘符,则说明它是一个绝对路径。
  • long lastModified():返回文件的最后修改时间。
  • long length():返回文件内容的长度。
  • boolean createNewFile():当此File对象对应的文件不存在时,创建一个该File对象所对应的文件,创建成功返回true,否则返回false。
  • boolean delete():删除File对象所在的文件或路径。注意:当使用这个方法时,如果是删除的一个文件夹,文件夹中有内容时文件夹不会被删除,如果是个空文件夹则可以删除成功。

5、目录操作相关的方法

  • boolean mkdir():创建一个File对象所对应的目录,创建的是目录而不是文件。注意:这个方法,如果父级目录不存在时,则子目录无法创建。
  • boolean mkdirs():创建一个File对象所对应的所有目录,如果上级目录不存在,会同时将上级目录创建出来。
  • File[] listFile():列出File对象的所有子文件和路径,返回File数组。
  • Static File[] listRoots():列出系统所有根路径。

你可能感兴趣的:(Java)