File对象:
•一个File类的对象,表示了磁盘上的文件或目录
•File类提供了与平台无关的方法来对磁盘上的文件或目录进行操作
•File类直接处理文件和文件系统。
•File类没有指定信息怎样从文件读取或向文件存储
•File类描述了文件本身的属性
•File对象用来获取或处理与磁盘文件相关的信息,例如权限,时间,日期和目录路径
•File类还可以浏览子目录层次结构
了解File类的几个构造方法:
File myFile = new File(" myfile. txt");
File myDir = new File(" MyDocs");
File myFile = new File( myDir, "myfile. txt");
这些构造方法取决于访问文件的方式。例如,若在应用程序里只用一个文件,第一种创建文件的结构是最容易的。但若在同一目录里打开数个文件,则后种方法更好一些。
注意:createNewFile去创建文件的时候,那么它的父路径本身是应该已经存在的了
File的目录管理和文件管理
•目录管理
–目录操作的主要方法为:
–public boolean mkdir()根据抽象路径名创建目录。如果要创建多层的目录,那么就要用mkdirs()这个方法
–public String[] list()返回抽象路径名表示路径中的文件名和目录名。
•文件管理
–在进行文件操作时,常需要知道一个关于文件的信息。Jave的File类提供了方法来操纵文件和获得一个文件的信息。另外,File类还可以对目录和文件进行删除、属性修改等管理工作
•File类中的常用方法
String getName()
String getPath()
String getAbsolutePath()
String getParent()
boolean renameTo( File newName)
long length()
boolean delete()
boolean mkdir()
String[] list()
FilenameFilter:
–希望能够限制由list()方法返回的文件数目,使它仅返回那些与一定的文件名方式或者过滤(filter)相匹配的文件。为达到这样的目的,必须使用list()的第二种形式(方法重载)
–String[ ] list(FilenameFilterFFObj)
–该形式中,FFObj是一个实现FilenameFilter接口的类的对象
public class FileTest7
{
public static void main(String[] args)
{
File file = new File("C://abc//xyz//hello");
String[] names = file.list(new FilenameFilter()
{
public boolean accept(File dir, String name)
{
if(name.endsWith(".txt"))
{
return true;
}
return false;
};
});
for(String name : names)
{
System.out.println(name);
}
}
}