一、File类的说明
- File类的一个对象,代表一个文件或一个文件目录(文件夹)
- File声明在java.io包下
- File类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小的方法。并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用IO流来完成。
- 后续File类的对象常会作为参数传递到流的构造器中,指明读取或写入的“终点”。
二、File类的使用
- 创建File的实例
File(String filePath)
File(String parentPath,String childPath)
File(File parentPath,String childPath) - 相对路径:相较于某个路径下,指明的路径。
绝对路径:包含盘符在内的文件或文件目录的路径 - 路径分隔符
windows:\\
unix:/
三、部分常用方法
File类的获取功能
- public String getAbsolutePath():获取绝对路径
- public String getPath():获取路径
- public String getName():获取名称
- public String getParent():获取上层文件目录路径。若无,返回null
- public long length():获取文件长度(即:字节数)。不能获取目录长度
- public long lastModified():获取最后一次的修改时间,毫秒值
- 适用于文件目录:
- public String[] list():获取指定目录下的所有文件或文件目录的名称数组
- public File[] listFiles():获取指定目录下的所有文件或文件目录的File数组
- public boolean renameTo(File dest):把文件重命名为指定的文件路径
public class FileMethodTest {
@Test
public void test(){
File file1=new File("hello.txt");
File file2=new File("E:\\study and test\\io\\hi.txt");
System.out.println(file1.getAbsolutePath());
System.out.println(file1.getPath());
System.out.println(file1.getName());
System.out.println(file1.getParent());
System.out.println(file1.length());
System.out.println(new Date(file1.lastModified()));
System.out.println();
System.out.println(file2.getAbsolutePath());
System.out.println(file2.getPath());
System.out.println(file2.getName());
System.out.println(file2.getParent());
System.out.println(file2.length());
System.out.println(file2.lastModified());
}
@Test
public void test1(){
File file=new File("E:\\untitled\\study");
//public String[] list():获取指定目录下的所有文件或文件目录的名称数组
String[] list = file.list();
for (String s:list
) {
System.out.println(s);
}
File[] files = file.listFiles();
for(File f:files){
System.out.println(f);
}
}
@Test
public void test3(){
//public boolean renameTo(File dest):把文件重命名为指定的文件路径
//以file1.renameTo(file2)为例:
//要想保证返回true,需要file1在硬盘中是存在的,且file2不能在硬盘中存在
File file1=new File("hello.txt");
File file2=new File("E:\\study and test\\io\\hi.txt");
boolean b = file1.renameTo(file2);
System.out.println(b);
}
}