2020-09-09 19:40:48
directory是一种特殊的文件管理机制。将相似的文件保存在同一目录下,不仅可以简化文件管理,而且可以提高工作效率。Java语言java.io文件包中定义了一个文件类来管理磁盘文件和目录。每个file类对象表示一个磁盘文件或目录,其对象属性包含有关该文件或目录的信息。通过调用file类提供的各种方法,可以创建、删除、重命名文件,判断文件的读写权限和存在性,设置和查询文件的最新修改时间。不同的操作系统有不同的文件系统组织方式。通过使用文件类对象,Java程序可以以独立于平台的统一方式处理文件和目录。
要创建一个file类对象,您需要给出它对应的文件名或目录名以及file类的构造方法。
表10-9文件类构造方法
构造函数函数说明
公共文件(字符串路径)指定与文件对象关联的文件名或目录名。Path可以包含路径、文件和目录名
public file(string Path,string name)创建一个以Path为路径,name为文件名或目录名的file对象
public file(file dir,string name)使用现有文件object dir作为目录,name作为文件名或目录名来创建文件对象
public file(ur-UI)使用给定的统一资源定位器来定位文件
在使用file类的构造方法时,需要注意以下几点:
(1)path参数可以是绝对路径、相对路径或磁盘上的目录。
(2) 因为不同的操作系统使用不同的目录分隔符,所以可以使用system类的静态变量系统.dirSep实现不同操作系统下的公共路径。例如:
D:+系统.dirSep+“我的爪哇”+系统.dirSep+“File”
get properties and operations
借助File对象,可以获取文件及相关目录的属性信息,并对其进行管理和操作。表10-10列出了常用方法和说明。
表10-10 file的常用方法
方法函数说明
Boolean canread()如果文件可读则返回true,否则返回false
Boolean canwrite()如果文件可写则返回true,如果不可写则返回false
Boolean exists()以确定文件或目录是否存在
Boolean exists()Createnewfile()(如果文件不存在)它将创建一个具有指定名称的空文件并返回true;如果不存在,它将返回false
Boolean isfile()以确定对象是否表示有效的文件
Boolean isdirectory()确定对象是否表示有效的目录
Boolean equals(file F)比较两个文件或目录是否相同
String Getname()返回文件名或目录名的字符串
string getpath()返回文件或目录路径的字符串
long length()返回文件的字节数。如果file对象表示目录,则返回0
long lastmodified()返回上次修改文件或目录的时间
String[]list()将目录中的所有文件名保存在字符串数组中,如果文件对象不是目录,则返回,返回null
Boolean delete()以删除文件或目录。只能删除空目录。如果删除成功,则返回true。否
则,返回false
Boolean mkdir()将创建当前目录的子目录并成功返回true。否则,返回false
Boolean renameto(file newfile)将文件重命名为指定的文件名
【例 10-11】判断输入的绝对路径是代表一个文件或一个目录。若是文件输出此文件的绝对路径,并判断此文件的文件属性(是否可读写或隐藏);若是目录则输出该目录下所有文件(不包括隐藏文件)。
//********** ep10_11.java **********
import java.io.*;
class ep10_11{
public static void main(String args[]) throws IOException{
String FilePath;
InputStreamReader in=new InputStreamReader(System.in);
BufferedReader a=new BufferedReader(in);
System.out.println("请输入一个绝对路径:");
FilePath=a.readLine(); //将FilePath作为输入值
File FileName=new File(FilePath); //获得此路径的文件名称
if (FileName.isDirectory()){ //判断此文件是否为目录
System.out.println((FileName.getName())+"为一个目录");
System.out.println("================");
File FileList[]=FileName.listFiles(); //将目录下所有文件存入数组
for(int i=0;i
if(FileList[i].isHidden()==false){ //判断是否为隐藏文件
System.out.println(FileList[i].getName()); //输出非隐藏文件
}
}
}
else{
System.out.println((FileName.getName())+"为一个文件");
System.out.println("================");
//获得文件绝对路径
System.out.println("绝对路径为:"+FileName.getAbsolutePath());
//判断此文件是否可读取
System.out.println(FileName.canRead()?"可读取":"不可读取");
//判断此文件是否可修改
System.out.println(FileName.canWrite()?"可修改":"不可修改");
//判断此文件是否为隐藏
System.out.println(FileName.isHidden()?"为隐藏文件":"非隐藏文件");
}
}
}
--------------------------------------------------------
相关文章
更多文章
.
本文介绍了Java中的File类,用于管理磁盘文件和目录。File类提供了多种构造方法创建对象,如根据路径、文件名或目录名等。通过File对象,可以获取文件属性、检查文件读写权限、创建、删除和重命名文件。示例代码展示了如何判断文件或目录并打印相关信息。
2915

被折叠的 条评论
为什么被折叠?



