File类 , 看名字就知道,是对文件进行管理的类。
注意:其实目录也是一种文件的表现形式,只是为了区分,所以叫目录,个人见解
----------------------------------------------------------------------------------------------------------------------------------------------------------------
File类示例演示:
import java.io.*;
class FileTest
{
public static void main(String[] args) throws IOException
{
/* 构造方法 */
File dir = new File("e:/d"); //目录对象
File file = new File("Test.java"); //文件对象
File urlFile = new File("e:/d/Test.java"); //指定目录下的文件
File dirFile = new File("e:/d", "Test.java"); //指定目录下的文件的分开写法
/* 获取 */
dir.getAbsoluteFile(); //返回File对象的绝对路径 (返回字符串)
dir.getAbsolutePath(); //返回File对象的绝对路径 ( 返回对象 )
dir.getCanonicalFile(); //返回File对象的正规格式 (返回字符串)
dir.getCanonicalPath(); //返回File对象的正规格式 ( 返回对象 )
dir.getName(); //返回File对象的文件(目录) 名称
dir.getPath(); //返回File对象路径 (返回字符串)
dir.toString(); //返回File对象路径 (返回字符串)
dir.getParent(); //返回File对象的上一级目录 (返回字符串)
//注意:如果File对象是".", 点表示当前目录,但是不能返回上一级目录
dir.getParentFile(); //返回File对象的上一级目录 (对象) 注意同上
System.getProperty("user.dir"); //返回当前目录(返回字符串)
dir.length(); //返回文件(目录)的长度
dir.lastModified(); //返回文件(目录)最后一次修改时间
File.listRoots(); //返回计算机所有盘符、包括隐藏 (返回对象数组)
String[] s1 = dir.list(); //返回File对象下的列表文件,包含隐藏文件 (返回字符串数组)
String[] s2 = dir.list(new FilenameFilter() { //返回一个字符串数组
//返回File对象下指定的文件(包含隐藏文件)
public boolean accept(File dir, String name) { //需要传递有个过滤器 FilenameFilter,复写accept方法
return name.endsWith(".txt");
}
});
//File[] f1 = dir.listFiles(); //返回File对象下的列表文件,包含隐藏文件 (返回File对象数组)
//File[] f2 = dir.listFiles(new FilenameFilter()...); 功能同上,加入了过滤器 (返回File对象数组)
/* 判断 */
dir.canRead(); //是否可以读取文件(目录)
dir.canWrite(); //是否可以操作文件(目录)
dir.canExecute(); //是否可以执行文件(目录)
dir.exists(); //判断文件(目录) 是否存在
dir.equals(file); //判断2个File对象是否相等
dir.compareTo(file); //判断2个File对象是否相等 0为相等,并按照字典排序
dir.isAbsolute(); //判断File对象是否是绝对路径
dir.isDirectory(); //判断File对象是否是一个目录
dir.isFile(); //判断File对象是否是一个文件
dir.isHidden(); //判断File对象是否是一个隐藏文件(目录)
/* 操作 */
dir.mkdir(); //创建路径下最后目录,前面目录不存在或最后目录已存在,返回false
dir.mkdirs(); //创路径下所有目录, 如果存在,返回false
dir.createNewFile(); //创建文件,如何文件存在,则返回false
dir.delete(); //删除文件(目录),删除不成功返回false (目录下有文件则删除不成功,目录必须为空)
oldFile.renameTo(newFile); //重命名文件(目录)名称 (可用于移动文件、目录)
File.createTempFile("Test", ".txt"); //当前目录下,创建临时文件
File.createTempFile("Test", ".txt", dir); //指定目录下,创建临时文件
dir.deleteOnExit(); //程序退出后,删除临时文件
dir.setLastModified(long time); //设置File对象最后一次文件(目录)修改时间
dir.setExecutable(boolean executable); //设置File对象是否可以执行
dir.setReadable(boolean readable); //设置File对象是否可以读取
dir.setWritable(boolean writable); //设置File对象是否可以写入
dir.setReadOnly(); //设置File对象属性为只读
dir.setWritable(true, true); //设置File对象的所有者或所有用户的写权限
}
}