文章目录
- 一、File类基本概念
- 二、常用API
- 1.获取文件绝对路径
- 2.获取文件定义时候使用的路径
- 3.获取文件的名称,带后缀
- 4.获取文件的大小,字节个数
- 5.获取文件的最后修改时间
- 6.判断文件对象是文件还是文件
- 总体实现
一、File类基本概念
在 Java 中,File 类是 java.io 包中唯一代表磁盘文件本身的对象,也就是说,如果希望在程序中操作文件和目录,则都可以通过 File 类来完成。File 类定义了一些方法来操作文件,如新建、删除、重命名文件和目录等。
File 类不能访问文件内容本身,如果需要访问文件内容本身,则需要使用输入/输出流。
File 类提供了如下三种形式构造方法。
- File(String path):如果 path 是实际存在的路径,则该 File 对象表示的是目录;如果 path 是文件名,则该 File 对象表示的是文件。
- File(String path, String name):path 是路径名,name 是文件名。
- File(File dir, String name):dir 是路径对象,name 是文件名。
二、常用API
1.获取文件绝对路径
方法源码:
public String getAbsolutePath() {
return fs.resolve(this);
}
范例:
File v=new File("src/data.txt");
System.out.println(v.getAbsolutePath());
返回File对象的绝对路径
2.获取文件定义时候使用的路径
方法源码:
public String getPath() {
return path;
}
范例:
File v=new File("src/data.txt");
System.out.println(v.getPath());
返回文件定义时候使用的路径
3.获取文件的名称,带后缀
方法源码:
public String getName() {
int index = path.lastIndexOf(separatorChar);
if (index < prefixLength) return path.substring(prefixLength);
return path.substring(index + 1);
}
范例:
File v=new File("src/data.txt");
System.out.println(v.getName());
4.获取文件的大小,字节个数
方法源码:
public long length() {
SecurityManager security = System.getSecurityManager();
if (security != null) {
security.checkRead(path);
}
if (isInvalid()) {
return 0L;
}
return fs.getLength(this);
}
范例:
File v=new File("src/data.txt");
System.out.println(v.length());
5.获取文件的最后修改时间
方法源码:
public long lastModified() {
SecurityManager security = System.getSecurityManager();
if (security != null) {
security.checkRead(path);
}
if (isInvalid()) {
return 0L;
}
return fs.getLastModifiedTime(this);
}
范例:
File v=new File("src/data.txt");
System.out.println(v.lastModified());
返回值为long。
6.判断文件对象是文件还是文件
范例:
File v=new File("src/data.txt");
System.out.println(v.isFile());
System.out.println(v.isDirectory());
总体实现
代码:
import java.io.File;
import java.text.SimpleDateFormat;
public class Work_1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
File v=new File("src/data.txt");
//判断文件对象是文件还是文件夹
System.out.println(v.isFile()); //判断是否是文件
System.out.println(v.isDirectory()); //判断是否是文件夹
//返回最后修改时间
long time =v.lastModified(); //输出的是秒
SimpleDateFormat date=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(date.format(time)); //输出正常年月日
//返回文件大小,字节数
System.out.println(v.length());
//返回文件名字
System.out.println(v.getName());
//返回文件相对路径
System.out.println(v.getPath());
//返回文件绝对路径
System.out.println(v.getAbsolutePath());
}
}