- 在对文件进行基本操作时,需要了解一些文件系统的基本常识,比如:
1.文件的全名包含文件的路径名和扩展名,通常单讲一个文件文件名时,是不带路径但带扩展名的文件名。
2.系统主要有目录类型的文件和真实文件以及虚拟内存文件等。同一目录下不能存在同名的目录和文件。
3.关于相对目录、绝对目录和当前目录。首先,相对路径是指不以路径分隔符开头的文件路径;其次,绝对路径是以根目录开头的路径;当前目录是指相对运行程序的目录算起的相对路径。
4.Window平台上的路径分隔符和名字分隔符分别为"\"和";",Linux平台上的路径分隔符和名字分隔符分别为"/"和":"。
- File类的属性:
1.public static String pathSeparator:当前操作系统的路径分隔符,在构造一个文件路径的字符串时,一般使用File类的此属性代替硬编码的路径分隔符。
2.public static String separator:当前系统的名字分隔符。
- File类的构造器:
1.File(File parent, String child ):在一个父文件(目录)对象下创建一个名字为child的文件对象。
2.File(String pathname):创建一个指向pathname名字的文件对象。
3.File(String parent, String child):以一个名位parent字符串作为父目录名,创建一个指向名为child的文件对象。
另外,还需注意,当调用这些构造器时,只是在虚拟机内存中生成了一个文件对象。要想在磁盘上创建此文件,还需调用此文件对象的createNewFile()方法。
- File类的常用方法:
1.boolean exists():判断File对象指向的文件是否存在。
2.String getName():得到不带路径的文件名。
3.boolean isDirectory():判断File对象指向的文件是否是目录。
4.boolean isFile():判断File对象指向的文件是否是真实文件。
5.long length():得到File对象指向的文件的长度,用byte计,如果指向目录,则返回0.
6.File[] listFiles():将File对象指向的文件下一级的所有目录和真实文件作为一个数组返回。如果File对象时一个真实文件,则返回null。
7.static File[] listRoots():通过File类可直接调用此方法,可将机器上的每个逻辑驱动器作为File返回File数组对象中的一个元素,在Windows平台上,可以判断机器上有多少个逻辑驱动器。在Linux平台上,因为其为单根文件系统,所以返回数组的长度为1。
8.boolean mkdir():根据File对象的名字(路径)创建一个目录,如果是相对目录,则在当前目录下。
9.boolaen mkdirs():如果File对象名字有多级目录,可以一次性创建。注意,此操作失败时也可能已经成功地创建了一部分必需的父目录。
10.boolean delete():从磁盘上删除File对象所指向的文件。
11.boolean createNewFile():根据File对象的名字在磁盘上创建一个新的真实文件。
12.boolean isAbsolute():测试此抽象路径名是否为绝对路径名。
13.boolean isHidden():测试此抽象路径名指定的文件是否是一个隐藏文件。
14.long lastModified():返回此抽象路径名表示的文件最后一个被修改的时间。
15.int hashCode():计算抽象路径名的哈希码。
16.String path(): 将此抽象路径名转换为一个路径名字符串。
17.boolean canRead():测试应用程序是否可以读取此抽象路径名表示的文件.
18.static File createTempFile(String prefix, String suffix,File directory):在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称。