Kotlin-Demo/jTest/FIleCopyBase.java

70 lines
2.7 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package jTest;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Map;
public class FIleCopyBase {
public static void main(String[] args) throws IOException {
Path source = Path.of("D:\\Project\\demo\\source\\神偷奶爸4.ts");
Path target = Path.of("D:\\Project\\demo\\target\\神偷奶爸4.ts");
// 复制速度很快
Path copyPath = Files.copy(source, target);
System.out.println("输出复制完成后的路径" + copyPath);
// 删除文件,文件不存在或者目录不存在会抛出异常
Files.delete(target);
// 删除文件如果存在就删除,不存在不会抛出异常
Files.deleteIfExists(target);
// 移动文件
Path movePath = Files.move(source, target);
System.out.println("输出移动完成后的路径" + movePath);
// 判断文件是否存在
boolean exists = Files.exists(source);
System.out.println(exists);
// 是否为隐藏文件
boolean hidden = Files.isHidden(target);
System.out.println(hidden);
// 判断是否为目录
boolean directory = Files.isDirectory(target);
System.out.println(directory);
// 检查指定路径是否可读取。当文件或目录具有读取权限时Files.isReadable() 方法将返回 true否则返回 false。
boolean readable = Files.isReadable(target);
System.out.println(readable);
// 表示是否是可执行的文件
boolean executable = Files.isExecutable(target);
System.out.println(executable);
// 是否表示一个常规文件,是指不是目录或符号链接的文件
boolean regularFile = Files.isRegularFile(target);
System.out.println(regularFile);
// 检查文件是否相同
Files.copy(target, source);
boolean sameFile = Files.isSameFile(target, source);
System.out.println(sameFile);
// 是否表示一个符号链接
boolean symbolicLink = Files.isSymbolicLink(target);
System.out.println(symbolicLink);
// 文件按字节的大小
long size = Files.size(target);
System.out.println(size);
// 读取指定文件的属性,如果第二个参数为空字符串,将返回所有基本文件属性。
// {lastAccessTime=2024-08-10T15:37:23.5577285Z, lastModifiedTime=2024-08-10T08:18:39.377836Z, size=1158625012, creationTime=2024-08-10T15:12:56.5838403Z, isSymbolicLink=false, isRegularFile=true, fileKey=null, isOther=false, isDirectory=false}
Map<String, Object> stringObjectMap = Files.readAttributes(source, "basic:*");
System.out.println(stringObjectMap);
}
}