文件管理
Java使用File类对文件和目录进行操作,当查找文件时需要时间FilenameFilter
或FileFilter
接口。读写文件内容可以通过FileInputStream
、FileOutputStream
、FileRender
、FileWriter
类实现
1.File类
File类表示一个文件或目录
1.1构造方法
- File(String path):如果path是实际存在的
路径
,那么File对象表示目录
;如果path是文件名
,则File对象表示文件
- File(String path,String name):path是
路径名
,name是文件名
- File(File dir,String name):dir是路径对象,name是文件名
1.2获取文件名
- String getName():获取文件名称
- String getPath():获取文件路径
- String getAbsolutePath():获取绝对路径
- String getParent():获取上一级目录
1.3文件属性测试
- boolean exists():测试当前File对象所表示的文件是否存在
- boolean canWrite():测试当前文件是否可写
- boolean canRead():测试当前文件是否可读
- boolean isFile():测试当前文件是否是文件
- boolean isDirectory():测试当前文件是否有目录
1.4文件操作
- long lastModified():获取文件最后一次修改的时间
- long length():获取文件长度,以字节为单位
- boolean delete():删除当前文件,如果成功返回true,失败返回false
- boolean renameTo(File dest):将重新明明当前File对象所表示的文件,如果成功返回true,如果失败返回false
1.5目录操作
- boolean mkdir():创建当前File对象指定的目录
- String[] list():返回当前文件下的目录和文件,返回值是字符串数组
- String[] list(fileNameFilter filter):返回当前目录下满足过滤器的文件和目录,参数是满足fileNameFilter接口对象,返回值是字符串数组
- file[] listFiles():返回当前目录下的文件和目录,返回值是File数组
- file[] listFiles(FileNameFilter filter):返回当前目录下满足过滤器的文件和目录,参数是满足fileNameFilter接口对象,返回值是File数组
- file[] listFiles(FileFilter filter):返回当前目录下满足过滤器的文件和目录,参数是满足fileFilter接口对象,返回值是File数组
对目录操作有两个过滤器接口:FilenameFilter
和FileFilter
。他们都只有一个抽象方法accept
FilenameFilter接口的accept方法如下
boolean accept(File dir,String name)
:测定指定dir
目录是否包含name
的文件
FileFilter接口中accept方法如下
boolean accept(File pathname)
:测试指定路径名
是否包含在某个路径名
列表中