Java 实现删除文件工具类
工具代码
- package com.wangbo;
- import java.io.File;
- /**
- * 删除目录或文件工具类
- * @author wangbo
- * @date 2017-04-11 15:59:30
- */
- public class FileDelUtil {
- /**
- * 入口方法
- * 根据路径删除指定的目录或文件,无论存在与否
- * @param path 要删除的目录或文件路径
- * @return 删除成功返回 true,否则返回 false。
- */
- public static boolean deleteFolder(String path) {
- //验证字符串是否为正确路径名的正则表达式
- String regex = "[A-Za-z]:\\\\[^:?\"><*]*";
- if (path == null || !path.matches(regex)) {
- System.out.println("path=" + path);
- return false;
- }
- File file = new File(path);
- //判断目录或文件是否存在
- if (!file.exists()) {
- return false;
- } else {
- //判断是否为文件
- if (file.isFile()) {
- return deleteFile(path);
- } else {
- return deleteDirectory(path);
- }
- }
- }
- /**
- * 删除单个文件
- * @param path 被删除文件的文件名
- * @return 单个文件删除成功返回true,否则返回false
- */
- private static boolean deleteFile(String path) {
- File file = new File(path);
- //路径为文件且不为空则进行删除
- if (file.isFile() && file.exists()) {
- file.delete();
- return true;
- }
- return false;
- }
- /**
- * 删除目录(文件夹)以及目录下的文件
- * @param path 被删除目录的文件路径
- * @return 目录删除成功返回true,否则返回false
- */
- private static boolean deleteDirectory(String path) {
- //如果path不以文件分隔符结尾,自动添加文件分隔符
- if (!path.endsWith(File.separator)) {
- path = path + File.separator;
- }
- File dirFile = new File(path);
- //如果dir对应的文件不存在,或者不是一个目录,则退出
- if (!dirFile.exists() || !dirFile.isDirectory()) {
- return false;
- }
- boolean flag = true;
- //删除文件夹下的所有文件(包括子目录)
- File[] files = dirFile.listFiles();
- for (int i = 0; i < files.length; i++) {
- if (files[i].isFile()) {//删除子文件
- flag = deleteFile(files[i].getAbsolutePath());
- }else { //删除子目录
- flag = deleteDirectory(files[i].getAbsolutePath());
- }
- if (!flag) return flag;
- }
- //删除当前目录
- return dirFile.delete();
- }
- }
Java 实现删除文件工具类的更多相关文章
- Java读取properties文件工具类并解决控制台中文乱码
1.建立properts文件(error.message.properties) HTTP201= 请求成功并且服务器创建了新的资源 2.在spring-mvc.xml文件(applicationCo ...
- java学习_文件工具类
工具类里面的方法全部都是静态的,调用的时候不需要实例化
- java上传文件工具类
这个是之前整理之前所学时与使用java向邮箱发送邮件一块找到的,一起贴出来供大家参考: import java.awt.image.BufferedImage; import java.io.File ...
- java读取.txt文件工具类FileUtiles
public class FileUtils { private static final String ENCODING = "UTF-8";//编码方式 /** * 获取文件的 ...
- FileUtils 文件工具类
FileUtils 下载jar中的文件 package com.meeno.chemical.common.utils; import lombok.extern.slf4j.Slf4j; impor ...
- Java常用工具类---IP工具类、File文件工具类
package com.jarvis.base.util; import java.io.IOException;import java.io.InputStreamReader;import jav ...
- 自动扫描FTP文件工具类 ScanFtp.java
package com.util; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import ja ...
- 读取Config文件工具类 PropertiesConfig.java
package com.util; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io ...
- java文件工具类
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...
随机推荐
- 29 _react-router说明
一.SPA的理解 1.单页面web应用(single page web application ,SPA) 2.整个应用只有一个完整的页面 3.点击页面中的链接不会刷新页面,本身也不会向服务器发请求 ...
- java 流转换BASE64的一些问题
java 转换BASE64过程中,出现很多结尾为空的问题!暂时不清楚为什么会这样- ``` java //根据url地址转换成BASE64 public static String getURLIma ...
- Nginx隐藏标识以及其版本号
1.隐藏版本号 curl Nginx服务器时,有这么一行Server: nginx,说明我用的是 Nginx 服务器,但并没有具体的版本号.由于某些 Nginx 漏洞只存在于特定的版本,隐藏版本号可以 ...
- .do的消除
其实就是在web.xml中去掉.do即可 那里有拦截器作用,什么样的文件可以进入前端控制器1
- Echarts 柱状图属性详解
<script type="text/javascript"> // 基于准备好的dom,初始化echarts实例 var myChart = echarts.init ...
- IDEA 工具从Json自动生成JavaBean
1.先安装GsonFormat插件:File-->Setting-->Plugins-->GsonFormat-->OK 2.new 一个新的Class空文件,然后 Alt+I ...
- php 计算 距离
function getdistance($lng1,$lat1,$lng2,$lat2){ //将角度转为狐度 $radLat1=deg2rad($lat1);//deg2rad()函数将角度转换为 ...
- openvpn显示连接成功但是无法进行git操作
使用openvpn连接公司内网以进行git操作.以管理员身份运行openvpn gui,一段时间后提示连接成功,右下角图标变成绿色,但是进行git操作,每次都发生失败,提示连接不上.右键点击openv ...
- python生成器(generator)、迭代器(iterator)、可迭代对象(iterable)区别
三者联系 迭代器(iterator)是一个更抽象的概念,任何对象,如果它的类有next方法(next python3)和__iter__方法返回自己本身,即为迭代器 通常生成器是通过调用一个或多个yi ...
- 搭建中小规模集群之rsync数据同步备份
NFS重要问题 1.有关NFS客户端普通用户写NFS的问题. 1)为什么要普通用户写NFS. 2)exports加all_squash. Rsync介绍 什么是Rsync? Rsync是一款开源的.快 ...