File
package com.sq.sgg;
import org.junit.Test;
import java.io.File;
import java.io.IOException;
import java.util.Date;
/*
File 类的使用
1.File 类的一个对象,代表一个文件或下一个文件目录(俗称:文件夹)
2.File 类声明在 java.io 包下
3.File 类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,
并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用 IO 流来完成。
4.后续 File 类的对象常会作为参数传递到流的构造器中,指明读取或写入的"终点"。
*/
public class FileTest {
/*
1.如何创建 File 类的实例
File(String filePath)
File(String parentPath,String childPath)
File(File parentFile,String childPath)
2.
相对路径:相较于某个路径下,指明的路径。
绝对路径:包含盘符在内的文件或文件目录的路径
3.路径分隔符
windows: \\
unix: /
*/
@Test
public void test1(){
// 构造器 1
File file1 = new File("hello.txt");// 相对于当前 module
File file2 = new File("D:\\desktop\\java开发工具Ij\\JavaSGGsenior\\Day11\\he.txt");
System.out.println(file1);// hello.txt
System.out.println(file2);// D:\desktop\java开发工具Ij\JavaSGGsenior\Day11\he.txt
// 构造器 2
File file3 = new File("D:\\workspaace_idea1","JavaSenior");
System.out.println(file3); // D:\workspaace_idea1\JavaSenior
// 构造器 3
File file4 = new File(file3,"hi.txt");
System.out.println(file4); // D:\workspaace_idea1\JavaSenior\hi.txt
}
/*
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 数组
*/
@Test
public void test2(){
File file1 = new File("hello.txt");
File file2 = new File("d:\\io\\hi.txt");
System.out.println(file1.getAbsoluteFile());// 绝对路径:
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()));// 最后一次修改时间:显示的是毫秒数
// 没有文件时:
// 绝对路径: hello.txt
// 路径: hello.txt
// 名称: null
// 上层文件目录路径:
// 文件长度: 0
// 最后一次修改时间: Thu Jan 01 08:00:00 CST 1970
// 有文件( hello:文件内容 helloworld )时:
// 绝对路径: hello.txt
// 路径: hello.txt
// 名称: null
// 上层文件目录路径:
// 文件长度: 10
// 最后一次修改时间: Sun Jul 25 12:47:03 CST 2021
System.out.println();
System.out.println(file2.getAbsoluteFile());// 绝对路径:
System.out.println(file2.getPath())