Java——File类的常用方法
- boolean exists() 测试文件是否存在
- String getAbsolutePath() 返回此对象表示的文件的绝对路径名
- String getName() 返回此对象表示你的文件的名称
- String getParent() 返回此File对象的路径名的上一级,如果路径名没有上一级,则返回null
- boolean delete() 删除此对象指定的文件
- boolean createNewFile() 创建空文件,不创建文件夹
- boolean isDirectory() 测试此File对象表示的是否是目录
- boolean mkdir() 创建一个目录,它的路径名由当前File对象指定
- boolean mkdirs() 创建包括父目录的目录
- getPath() 想对路径
- isFile() 是否是文件
- canRead() 是否可以读
- canWrite() 是否可以写
- length() 文件内容长度
- lastModified() 文件最后被修改的时间
- isAbsolute() 文件是否是绝对路径
- File[] listFiles = File.listFiles(); 获得文件里面所有的文件及文件夹
测试
package Demo20180717;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
public class Demo01 {
public static void main(String[] args) {
boolean createNewFile = false;
//构造一个文件对象,指定的文件路径构造文件的三种写法
File file = new File(“D:/a/a”);
// File file = new File(“D:a\a.txt”);
// File file = new File(“D:a” + File.separator + “a.txt”);
//创建空文件,不创建文件夹
try {
createNewFile = file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
/*
* 创建一个目录,它的路径名由当前File对象指定
* mkdir()表示创建最内级目录,如目录D:\test1\test2, 它只创建test2目录,如果test1本事不存在,那么它将创建失败,如果test1存在,它则创建成功
*/
boolean mkdir = file.mkdir();
/*
* 创建包括父目录的目录
* mkdirs()此方法创建所有目录结构,如目录D:\test1\test2,它既创建了test1也创建test2
*/
boolean mkdirs = file.mkdirs();
//判断文件或目录是否存在
boolean exists = file.exists();
//判断是否是文件
boolean file2 = file.isFile();
//判断是否是目录
boolean directory = file.isDirectory();
//判断文件是否是绝对路径
boolean absolute = file.isAbsolute();
//获取文件或目录的名称
String name = file.getName();
//获取文件或目录的路径
String path = file.getPath();
//返回的是一个字符串,这个字符串就是当前File对象的绝对路径名的字符串形式
String absolutePath = file.getAbsolutePath();
//返回的是一个File类对象,这个File对象表示是当前File对象的绝对路径名形式
File absoluteFile = file.getAbsoluteFile();
//返回值是String型,返回此对象的路径名的上一级,如果路径名没有上一级,则返回null
String parent = file.getParent();
//返回值是File型,返回此对象的路径名的上一级,如果路径名没有上一级,则返回null
File parentFile = file.getParentFile();
/*
* 获取文件或目录的最后修改日期
* (表示文件最后一次被修改的时间的 long 值,用该时间与历元(1970 年 1 月 1 日,00:00:00 GMT)的时间差来计算此值(以毫秒为单位))
*/
long lastModified = file.lastModified();
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss:SSS”);
String format = sdf.format(lastModified);
//获取文件或目录的大小,单位为字节
long length = file.length();
if(createNewFile){
System.out.println("创建成功!");
}else{
System.out.println("创建失败,文件已存在!");
}
if(mkdir){
System.out.println("创建成功!");
}else{
System.out.println("创建失败,上一级不存在!");
}
if(mkdirs){
System.out.println("创建成功!");
}else{
System.out.println("创建失败,此文件已存在!");
}
System.out.println("判断文件或目录是否存在:" + exists);
System.out.println("判断是否是文件:" + file2);
System.out.println("判断是否是目录:" + directory);
System.out.println("判断文件是否是绝对路径:" + absolute);
System.out.println("获取文件或目录的名称:" + name);
System.out.println("获取文件或目录的路径:" + path);
System.out.println("返回此对象表示文件的绝对路径:" + absolutePath);
System.out.println("返回此对象表示文件的绝对路径:" + absoluteFile);
System.out.println("获取文件或目录的最后修改日期:" + format);
System.out.println("获取文件或目录的大小:" + length);
System.out.println("返回此对象的路径名的上一级:" + parent);
System.out.println("返回此对象的路径名的上一级:" + parentFile);
if(exists){
//删除此对象指定的文件(如果删除文件夹,必须先删除与文件夹里所有的文件)
file.delete();
System.out.println("删除成功!");
}else{
System.out.println("删除失败,文件不存在!");
}
}
}