Path接口与Files工具类

简介: Path接口与Files工具类

Path接口与Files工具类

1.path接口

Path表示的是一个目录名序列,其后还可以跟着一个文件名,路径中的第一个部件是跟部件时就是绝对路径。否则就是相对路径

2.Files工具类

读写文件:static path write(Path path,byte[] bytes,OpenOption...options)写入文件

static byte[] readAllBytes(Path path)读取文件中的所有字节

复制、剪切,删除

static path copy(Path source,Path target,CopyOption...options)

static path move(Path source,Path target,CopyOption...options)

static void delete(Path path)//如果不存在会抛出异常,此时调用下面的比较好

static boolean deleteIfExists(Path path)

创建文件和目录

Files.createDirectory(Path)//创建目录,除了最后一个部件,其他的部件必须存在

Files.createDirectoties(Path)// 可以创建不存在的中间部件

```Files.cteatFile(Path)``// 创建一个空文件,已经存在会抛出异常

代码演示:

Path:

创建path的三种方式:

File file = new File("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\nio.txt");
 Path path2 = file.toPath();
Path path1 = Paths.get("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\nio.txt");
Path path3 = FileSystems.getDefault().getPath("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\nio.txt");

Files:

写文件:

//写文件(Files工具类)
        try {
            Files.write(path1, "lalala".getBytes(), StandardOpenOption.APPEND);
        } catch (IOException e) {
            e.printStackTrace();
        }

读文件

// 读文件
        byte[] bytes = new byte[0];
        try {
            bytes = Files.readAllBytes(path1);
        } catch (IOException e) {
            e.printStackTrace();
        }
        System.out.println(new String(bytes));

复制文件:

// 复制文件到哪里
        Path newPath = Paths.get("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\newNio.txt");
        try {
            //如果存在则覆盖
            Files.copy(path1, newPath, StandardCopyOption.REPLACE_EXISTING);
        } catch (IOException e) {
            e.printStackTrace();
        }

移动文件:

// 移动文件
        try {
            Files.move(Paths.get("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\move.txt"), Paths.get("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\NewMove.txt"), StandardCopyOption.REPLACE_EXISTING);
        } catch (IOException e) {
            e.printStackTrace();
        }

删除文件:

// 删除文件
        try {
            Files.deleteIfExists(Paths.get("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\delete.txt"));
        } catch (IOException e) {
            e.printStackTrace();
        }

创建新目录

// 创建新目录(除了最后一个目录,其他目录必须存在)
        // createDirectories(能创建不存在的中间部件)
        try {
            Files.createDirectory(Paths.get("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\textDirector"));
        } catch (IOException e) {
            e.printStackTrace();
        }

创建文件

// 创建文件
        try {
            Files.createFile(Paths.get("E:\\idea_workspace3\\yangli\\class_obj\\src\\com\\lili\\file\\wenjian.txt"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }


目录
相关文章
|
2天前
|
监控 C#
55.c#:file类
55.c#:file类
72 1
|
2天前
|
安全 Java 开发者
Java一分钟之-文件与目录操作:Path与Files类
【5月更文挑战第13天】Java 7 引入`java.nio.file`包,`Path`和`Files`类提供文件和目录操作。`Path`表示路径,不可变。`Files`包含静态方法,支持创建、删除、读写文件和目录。常见问题包括:忽略异常处理、路径解析错误和权限问题。在使用时,注意异常处理、正确格式化路径和考虑权限,以保证代码稳定和安全。结合具体需求,这些方法将使文件操作更高效。
11 2
|
2天前
|
Java API Windows
File 类及其方法
File 类及其方法
17 1
|
9月前
|
Java
Java 中File类的常用方法总结
Java 中File类的常用方法总结
58 0
|
8月前
|
Java
Java文件类File
Java文件类File
55 0
|
9月前
File类
File类
29 0
|
10月前
|
Java
java springboot实现上传MultipartFile类型 进行HttpRequest调用传入第三方上传接口
java springboot实现上传MultipartFile类型 进行HttpRequest调用传入第三方上传接口
|
11月前
|
Java 文件存储
Java_File类及其常用方法
Java_File类及其常用方法
63 0
|
网络协议 Java API
Java-NIO.2中Path、 Paths、Files类的使用
Java NIO (New IO,Non-Blocking IO)是从Java 1.4版本开始引入的一套新的IO API,可以替代标准的Java IO API。NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的(IO是面向流的)、基于通道的IO操作。NIO将以更加高效的方式进行文件的读写操作。
107 0