在修改漏洞的时候发现,根据建议都使用NIO包的FILES和PATH来进行文件操作,来保证安全性.

import java.nio.file.Files;
import java.nio.file.Path;


Path path = Paths.get("D:\\1.txt"); try {
  // 创建文件
  if(!Files.exists(path))
  Files.createFile(path);
  // 删除临时文件
  Files.delete(Paths.get(path));
} catch (IOException e) {
  e.printStackTrace();
}

使用Files前,需要先使用Path来获取文件路径,而且可以用Path转化为其他多种地址形式,非常的好用(相对/绝对路径/URI...)

Files同样可以用来判断文件/文件夹是否存在,同时也可以获取文件夹下的所有文件

在判断之后,使用Files进行创建文件,并使用Path

删除文件也是一样,使用Files进行删除文件

既安全又好用

1.Files.exists()

Files.exists()方法检查文件系统中是否存在给定的Path。

2.Files.createDirectory()

Files.createDirectory()方法从Path实例创建一个新目录。

3.Files.copy()

Files.copy()方法将文件从一个路径复制到另一路径。

4.覆盖现有文件

可以强制Files.copy()覆盖现有文件。

5.Files.move()

Java NIO Files类还包含一个用于将文件从一个路径移动到另一路径的函数。

6.Files.delete()

Files.delete()方法可以删除文件或目录。

7.Files.walkFileTree()

Files.walkFileTree()方法包含用于递归遍历目录树的功能。

记录几个常用的FIles方法,具体使用方法和File的基本相同,就是参数略有出入

针对FILES和PATH的操作的更多相关文章

  1. 【Java】Files.readAllBytes(Path) 遇见的坑

    Files.readAllBytes(Path)方法把整个文件读入内存,此方法返回一个字节数组,还可以把结果传递给String的构造器,以便创建字符串输出. 在针对大文件的读取的时候,可能会出现内存不 ...

  2. PreparedStatement实现针对不同表的通用查询操作

    PreparedStatement实现针对不同表的通用查询操作:查询一样和多行 PreparedStatementQueryTest package com.aff.PreparedStatement ...

  3. java 文件操作(二)---Files和Path

    自从java 7以来,引入了FIles类和Path接口.他们两封装了用户对文件的所有可能的操作,相比于java 1的File类来说,使用起来方便很多.但是其实一些本质的操作还是很类似的.主要需要知道的 ...

  4. java Files 和 Path对文件操作

    1.拷贝文件 /** * 拷贝文件,生成新的文件名 * @param pathUpload * @return */ private String converUploadFileName(Strin ...

  5. c++针对数据库,文件的操作总结(原始)

    1.将文件保存到sqlserver数据库的相关操作: Update t1 .txt’, SINGLE_BLOB ) Select convert( varchar(), data ) 注:fileTy ...

  6. Xshell6远程访问linux及Xftp6远程针对linux系统中文件操作(附图文详解)

    1.首先我们需要先做好前期准备工作,需要到XManager6官网上将Xshell及Xftp下载并安装,安装过程一直下一步就好了.这里是其官网:http://www.xshellcn.com/.安装完成 ...

  7. java8 的files、path类相关文件遍历API

    Path的两种初始化(应该还有别的方式) Path file = new File(path).toPath(); Paths.get 判断是文件.是目录 Files.isRegularFile(fi ...

  8. 使用File类、StreamRead和StreamWrite读写数据、以及Path类操作文件路径和Directory

    1.File类的概念: File类,是一个静态类,主要是来提供一些函数库用的.静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和 打开一个文件. File类方法的参量 ...

  9. Selenium系列(三) - 针对元素常见的简单操作

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...

  10. Path文件操作实例

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="AddProduct.asp ...

随机推荐

  1. WPF绑定(4)

    什么是绑定(Binding)? 在winform中, 我们常常会用到各种类型的赋值, 例如: button1.Text="Hello"; label.Text="Hell ...

  2. TP5 事务处理加锁

    首先,数据库类型要是InnoDB,其次,加锁必须跟事务同时使用,还有,查询的时候都必须带锁,比如: db('sms')->lock(true)->where(['id'=>1])-& ...

  3. python虚拟环境和包管理

    新建一个虚拟环境: python3 -m venv env1 # 新建一个名称为env1的虚拟环境 激活环境: source env1/bin/activate 退出虚拟环境: deactivate ...

  4. MySQL之校对集问题

    随笔记录方便自己和同路人查阅. #------------------------------------------------我是可耻的分割线--------------------------- ...

  5. 杭电oj 求奇数的乘积

    #include <stdio.h> #include <stdlib.h> int main() { int i,n,a; int sum = 1; while(scanf( ...

  6. Chrome 中设置默认搜索引擎为 google.com

    https://google.com/search?q=%s&ref=opensearch&safe=off 那么就可以使搜索结果默认在新标签页打开,同时关闭了搜索结果的安全过滤.   ...

  7. 使用react脚手架创建项目报错-You are running `create-react-app` 5.0.0, which is behind the latest release (5.0.1).

    创建项目报错: You are running `create-react-app` 5.0.0, which is behind the latest release (5.0.1). We no ...

  8. CentOS 7.9 环境下部署 Docker 服务

    sudo setenforce Permissive sudo vi /etc/selinux/config SELINUX=permissive sudo systemctl stop firewa ...

  9. 04 使用 BTrace 进行拦截调试

    BTrace BTrace 可以动态地向目标应用程序的字节码注入追踪代码,使用的技术有 JavaCompilerApi, JVMTI, Agent, Instrumentation+ASM 使用方法: ...

  10. 3927Circular Sequence 思维题(求环形最大子列和)

    Given a sequence with n elements, if the last element is also adjacent to the first element of the s ...