概念
文件和目录路径名的抽象表现形式
用法
方法名 | 方法解释 |
---|---|
canRead() | 测试应用程序是否可以读取此抽象路径名表示的文件 |
canWrite() | 测试应用程序是否可以修改此抽象路径名表示的文件 |
compareTo(File pathname) | 按字母顺序比较两个抽象路径名 |
canExecute() | 测试应用程序是否可以执行此抽象路径名表示的文件 |
createNewFile() | 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件 |
createTempFile(String prefix, String suffix) | 在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称 |
createTempFile(String prefix, String suffix, File directory) | 在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称 |
delete() | 删除此抽象路径名表示的文件或目录 |
void deleteOnExit() | 在虚拟机终止时,请求删除此抽象路径名表示的文件或目录 |
boolean equals(Object obj) | 测试此抽象路径名与给定对象是否相等 |
boolean exists() | 测试此抽象路径名表示的文件或目录是否存在 |
File getAbsoluteFile() | 返回此抽象路径名的绝对路径名形式 |
String getAbsolutePath() | 返回此抽象路径名的绝对路径名字符串 |
File getCanonicalFile() | 返回此抽象路径名的规范形式 |
String getCanonicalPath() | 返回此抽象路径名的规范路径名字符串 |
long getFreeSpace() | 返回此抽象路径名指定的分区中未分配的字节数 |
String getName() | 返回由此抽象路径名表示的文件或目录的名称 |
String getParent() | 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null |
File getParentFile() | 返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null |
String getPath() | 将此抽象路径名转换为一个路径名字符串 |
long getTotalSpace() | 返回此抽象路径名指定的分区大小 |
long getUsableSpace() | 返回此抽象路径名指定的分区上可用于此虚拟机的字节数 |
int hashCode() | 计算此抽象路径名的哈希码 |
boolean isAbsolute() | 测试此抽象路径名是否为绝对路径名 |
boolean isDirectory() | 测试此抽象路径名表示的文件是否是一个目录 |
boolean isFile() | 测试此抽象路径名表示的文件是否是一个标准文件 |
boolean isHidden() | 测试此抽象路径名指定的文件是否是一个隐藏文件 |
long lastModified() | 返回此抽象路径名表示的文件最后一次被修改的时间 |
long length() | 返回由此抽象路径名表示的文件的长度 |
String[] list() | 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录 |
String[] list(FilenameFilter filter) | 返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中满足指定过滤器的文件和目录 |
File[] listFiles() | 返回一个抽象路径名数组,这些路径名表示此抽象路径名表示的目录中的文件 |
File[] listFiles(FileFilter filter) | 返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录 |
File[] listFiles(FilenameFilter filter) | 返回抽象路径名数组,这些路径名表示此抽象路径名表示的目录中满足指定过滤器的文件和目录 |
static File[] listRoots() | 列出可用的文件系统根 |
boolean mkdir() | 创建此抽象路径名指定的目录 |
boolean mkdirs() | 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录 |
boolean renameTo(File dest) | 重新命名此抽象路径名表示的文件 |
boolean setExecutable(boolean executable) | 设置此抽象路径名所有者执行权限的一个便捷方法 |
boolean setExecutable(boolean executable, boolean ownerOnly) | 设置此抽象路径名的所有者或所有用户的执行权限 |
boolean setLastModified(long time) | 设置此抽象路径名指定的文件或目录的最后一次修改时间 |
boolean setReadable(boolean readable) | 设置此抽象路径名所有者读权限的一个便捷方法 |
boolean setReadable(boolean readable, boolean ownerOnly) | 设置此抽象路径名的所有者或所有用户的读权限 |
boolean setReadOnly() | 标记此抽象路径名指定的文件或目录,从而只能对其进行读操作 |
boolean setWritable(boolean writable) | 设置此抽象路径名所有者写权限的一个便捷方法 |
boolean setWritable(boolean writable, boolean ownerOnly) | 设置此抽象路径名的所有者或所有用户的写权限 |
String toString() | 返回此抽象路径名的路径名字符串 |
URI toURI() | 构造一个表示此抽象路径名的 file: URI |
注:摘自API手册
用法举例
/*File的获取功能*/
public class FileDemo {
public static void main(String[] args) {
fun4();
}
//获得 getParent() 获取父路径
public static void fun4(){
File file =new File("d:\\eclipse\\eclipse.exe");
String parent = file.getParent();
System.out.println(parent);
}
//获得绝对路径 绝对位置下的工程根目录
public static void fun3(){
File file = new File("src");
File abe = file.getAbsoluteFile();
System.out.println(abe);
}
//length() 获得文件的字节数
public static void fun2(){
File file = new File("d:\\day16.rar");
long length = file.length();
System.out.println(length);
}
//获取功能 放回路径中 表示的文件或者文件名 获取路径中最后部分的名字
public static void fun(){
File file = new File("d:\\day16.rar");
// String name = file.getName();
String name = file.getPath();
System.out.println(name);
}
}
/* File判断功能*/
public class FileDemo {
public static void main(String[] args) {
fun1();
fun2();
}
//判断封装的路径是不是文件夹
public static void fun2(){
File file = new File("d:\\eclipse");
if(file.exists()){
boolean b = file.isDirectory();
System.out.println(b);
}
}
// 判断路径是否存在 exists()
public static void fun1(){
File f = new File("src");
boolean es = f.exists();
System.out.println(es);
}
}
// 获取功能 所有的根目录
public class FileDemo2 {
public static void main(String[] args) {
fun2();
}
//返回的只有文件名
public static void fun2(){
File file = new File("c:");
String[] list = file.list();
System.out.println(list.length);
for(String str:list){
System.out.println(str);
}
}
// 遍历一个目录 返回全路径+文件名
public static void fun(){
File f = new File("d://eclipse");
File[] listFiles = f.listFiles();
for(File f1:listFiles){
System.out.println(f1);
}
}
}
// 创建文件功能 如果文件已经存在 不再创建
public class FileDemo2 {
public static void main(String[] args) throws IOException {
fun3();
}
//删除
public static void fun3(){
File file1 =new File("c:\\baixiaolong\\b.txt");
boolean b = file1.delete();
System.out.println(b);
}
//创建目录
public static void fun2() throws IOException{
File file =new File("c:\\baixiaolong");
boolean m = file.mkdirs();
System.out.println(m);
File file1 =new File("c:\\baixiaolong\\b.txt");
boolean s = file1.createNewFile();
System.out.println(s);
}
public static void fun() throws IOException{
File file =new File("c:\\a.txt");
boolean b = file.createNewFile();
System.out.println(b);
}
}
public static void main(String[] args) {
//过滤器: 指定 一个目录下拓展名的文件 或者是包含某个关键字的文件 .java
File file=new File("d:\\day17");
File[] listFiles = file.listFiles(new MyFilter());
for(File f:listFiles){
System.out.println(f);
}
}