一、Path、Paths 和 File、Files

        // Paths 工具类,用于获取 Path 实例
Path path = Paths.get("files/Data.txt"); // 相对路径
Path path2 = Paths.get("D:\\files/Data.txt"); // 绝对路径
Path path3 = Paths.get("D:/files/Data.txt"); // 绝对路径
Path path4 = Paths.get("D:/files", "Data.txt"); // 绝对路径
System.out.println(path); // 打印结果:files\Data.txt
System.out.println(path2); // 打印结果:D:\files\Data.txt
System.out.println(path3); // 打印结果:D:\files\Data.txt
System.out.println(path4); // 打印结果:D:\files\Data.txt
// 路径正常化
Path path5 = Paths.get("D:/files/../files2/file2.txt"); // 绝对路径
System.out.println(path5); // 打印结果:D:\files\..\files2\file2.txt
System.out.println(path5.normalize()); // 打印结果:D:\files2\file2.txt // Flies
boolean exists = Files.exists(path5); // 判断文件是否存在,存在返回true,反之返回false
System.out.println(exists); // false
try {
/*
创建一级目录
如果存在,则抛出异常:FileAlreadyExistsException
无法创建多级目录,如果目录不存在,则会抛出异常:NoSuchFileException
*/
Files.createDirectory(path5);
// 创建多级目录
Files.createDirectories(path5);
// copy 文件,如果文件存在则会抛出异常:FileAlreadyExistsException
Files.copy(path, path5);
// 如果希望覆盖掉已存在的文件,需要使用 StandardCopyOption.REPLACE_EXISTING
Files.copy(path, path5, StandardCopyOption.REPLACE_EXISTING);
// 移动文件,StandardCopyOption.ATOMIC_MOVE 保证移动文件的原子性
Files.move(path, path5, StandardCopyOption.ATOMIC_MOVE);
/*
1. 删除文件,如果文件不存在,则会抛出异常:NoSuchFileException
2. 删除目录,如果目录不存在,则会抛出异常:DirectoryNotEmptyException
*/
Files.delete(path2);
} catch (IOException e) {
e.printStackTrace();
}

二、文件遍历

File、Files、Path、Paths的更多相关文章

  1. 合并多行查询数据到一行:使用自连接、FOR XML PATH('')、STUFF或REPLACE函数 (转)

    转自: http://www.cnblogs.com/aolin/archive/2011/04/12/2014122.html 示例表 tb 数据如下 id value—————1 aa1 bb2 ...

  2. Sql Server合并多行询数据到一行:使用自连接、FOR XML PATH('')、STUFF或REPLACE函数

    示例表 tb 数据如下 id value ----- 1 aa 1 bb 2 aaa 2 bbb 2 ccc SELECT id, [val] = ( SELECT [value] + ',' FRO ...

  3. Go template高级用法、深入详解、手册、指南、剖析

    入门示例 以下为test.html文件的内容,里面使用了一个template语法{{.}}. <!DOCTYPE html> <html> <head> <m ...

  4. Java的Path、Paths和Files

    前言 因为这几天被java.nio的这几个接口和工具类卡到了,就顺便地查了一波文档以及使用方法,这篇其实更像是API的复制粘贴,只不过我在注释里多写了一些output和注意事项,看不惯API的可以选择 ...

  5. Java基础教程——File类、Paths类、Files类

    File类 File类在java.io包中.io代表input和output,输入和输出. 代表与平台无关的文件和目录. 可以新建.删除.重命名,但不能访问文件内容. File类里的常量: impor ...

  6. Java NIO学习系列七:Path、Files、AsynchronousFileChannel

    相对于标准Java IO中通过File来指向文件和目录,Java NIO中提供了更丰富的类来支持对文件和目录的操作,不仅仅支持更多操作,还支持诸如异步读写等特性,本文我们就来学习一些Java NIO提 ...

  7. NIO前奏之Path、Files、AsynchronousFileChannel

    NIO前奏之Path.Files.AsynchronousFileChannel   Java 1.4加入了nio包,Java 1.7 加入了真正的AIO(异步IO),AsynchronousFile ...

  8. C#文件与流(FileStream、StreamWriter 、StreamReader 、File、FileInfo、Directory、directoryInfo、Path、Encoding)

    (FileStream.StreamWriter .StreamReader .File.FileInfo.Directory.DirectoryInfo.Path.Encoding)     C#文 ...

  9. 6.NIO2-Path、Paths、Files

    NIO.2 jdk1.7中,java对 NIO 极大的扩展,主要增强的是对文件处理 和 文件系统特性的支持 关于其中一些API的使用 public class TestNIO_2_Path_File ...

  10. 10缓冲流、转换流、序列化流、Files

    十.流 10.1 缓冲流 10.1.1 概述                 缓冲流是对4个基本的FileXxx流的增强,所以也是4个流,按照数据类型进行分类                     ...

随机推荐

  1. finalshell如何查看密码

    1.右键点击导出 2.打开导出的配置文件,搜索password,找到password的编码后的字符串复制 3.运行下面代码,即可查看原来的密码,把main()方法的字符串替换成上一步复制的字符串imp ...

  2. Github好用的镜像网站

    最近Github越来越不好用了,发现一个特别好用的镜像网站,无论是进入还是下载都非常的快. https://hub.yzuu.cf/ 首页和Github没有任何区别, 注意请不要在连着梯子的时候使用, ...

  3. Document.createEvent与new Event区别

    Document.createEvent 写法: const e = document.createEvent('HTMLEvents'); e.initEvent('click', true, tr ...

  4. 前端实现电子签名(web、移动端)通用组件

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. a 标签下载文件重命名文件失效

    背景 : a标签下载cos桶文件download失效 原因:下载的链接跨域,download 属性重命名文件失效,浏览器无法获取到文件,无法进行更改. 解决办法: downloadFile(url, ...

  6. k8s部署-kubeadm

    环境配置 内核配置 基本组件安装 高可用组件安装 kubeadm集群初始化

  7. 使用docker 创建6节点redis 集群 RedisCluster redis集群

    1.RedisCluster 特点(3主节点redis 集群  及6节点集群) 1.无中心节点,客户端与redis 节点直连,不需要中间代理,(有选举机制 master个数需要奇数个) 2.数据可以被 ...

  8. 7.26-javascript

    折半查找:数据必须有序 //数组定义 let arr1 = [1,2,3,4,5]; //用字面量定义数组 let arr2 = new Array(1,2,3,4,5); //用字面量定义数组 le ...

  9. appium遇到的问题

    问题1:权限问题:java.lang.SecurityException: Injecting to another application requires INJECT_EV ENTS permi ...

  10. NGINX一次电脑自己可以访问其它IP访问不了

    配制好NGINX 本地电脑curl http..... 正常访问...其它电脑不可以 第一想法防火墙 查一下  firewall-cmd --state not running 然后查下是不是服务开启 ...