1,验证传入路径是否为正确的路径名(Windows系统,其他系统未使用)
- // 验证字符串是否为正确路径名的正则表达式
- private static String matches = "[A-Za-z]:\\\\[^:?\"><*]*";
- // 通过 sPath.matches(matches) 方法的返回值判断是否正确
- // sPath 为路径字符串
2,通用的文件夹或文件删除方法,直接调用此方法,即可实现删除文件夹或文件,包括文件夹下的所有文件
- /**
- * 根据路径删除指定的目录或文件,无论存在与否
- *@param sPath 要删除的目录或文件
- *@return 删除成功返回 true,否则返回 false。
- */
- public boolean DeleteFolder(String sPath) {
- flag = false;
- file = new File(sPath);
- // 判断目录或文件是否存在
- if (!file.exists()) { // 不存在返回 false
- return flag;
- } else {
- // 判断是否为文件
- if (file.isFile()) { // 为文件时调用删除文件方法
- return deleteFile(sPath);
- } else { // 为目录时调用删除目录方法
- return deleteDirectory(sPath);
- }
- }
- }
3,实现删除文件的方法,
- /**
- * 删除单个文件
- * @param sPath 被删除文件的文件名
- * @return 单个文件删除成功返回true,否则返回false
- */
- public boolean deleteFile(String sPath) {
- flag = false;
- file = new File(sPath);
- // 路径为文件且不为空则进行删除
- if (file.isFile() && file.exists()) {
- file.delete();
- flag = true;
- }
- return flag;
- }
4,实现删除文件夹的方法,
- /**
- * 删除目录(文件夹)以及目录下的文件
- * @param sPath 被删除目录的文件路径
- * @return 目录删除成功返回true,否则返回false
- */
- public boolean deleteDirectory(String sPath) {
- //如果sPath不以文件分隔符结尾,自动添加文件分隔符
- if (!sPath.endsWith(File.separator)) {
- sPath = sPath + File.separator;
- }
- File dirFile = new File(sPath);
- //如果dir对应的文件不存在,或者不是一个目录,则退出
- if (!dirFile.exists() || !dirFile.isDirectory()) {
- return false;
- }
- flag = true;
- //删除文件夹下的所有文件(包括子目录)
- File[] files = dirFile.listFiles();
- for (int i = 0; i < files.length; i++) {
- //删除子文件
- if (files[i].isFile()) {
- flag = deleteFile(files[i].getAbsolutePath());
- if (!flag) break;
- } //删除子目录
- else {
- flag = deleteDirectory(files[i].getAbsolutePath());
- if (!flag) break;
- }
- }
- if (!flag) return false;
- //删除当前目录
- if (dirFile.delete()) {
- return true;
- } else {
- return false;
- }
- }
5,main() 方法
- public static void main(String[] args) {
- HandleFileClass hfc = new HandleFileClass();
- String path = "D:\\Abc\\123\\Ab1";
- boolean result = hfc.CreateFolder(path);
- System.out.println(result);
- path = "D:\\Abc\\124";
- result = hfc.DeleteFolder(path);
- System.out.println(result);
- }
main() 方法只是做了一个简单的测试,建立文件夹和文件都是本地建立,情况考虑的应该很全面了,包括文件夹包含文件夹、文件。文件的不同情况…………
实现没有问题,可以正确删除文件夹和文件。
相关推荐
java 通过文件流动态的删除文件,或文件夹
Java文件工具类
内建方法,java创建和删除文件夹、文件
基于jdk7或以上java版本的java删除文件功能实现,主要类是SimpleFileVisitor,可删除指定类型文件,选择是否保存空文件夹
java创建和删除文件夹、文件.doc
通过java程序来删除本地文件
利用迭代 删除既有文件下的所有文件,自己写的有意向的慢慢看吧
用JAVA 实现的删除文件(夹)程序,运行的时候,输入正确的文件夹路径,然后确定删除,文件夹路径不正确的时候不会做任何事情。
1、指定文件可下载并且服务器端会删除此文件。 2、指定文件夹(文件夹中必须有一个文件),程序会自动的压缩文件为 zip,然后下载删除源文件与压缩文件。 3、可以指定文件都为最后生成为zip文件下载,且删除源文件...
提高JAVA删除文件效率,JAVA调用OS命令删除文件代码
配置参数即可使用 七牛云文件上传,下载,删除
java上传文件到linux服务器,操作linux服务器上文件,下载linux服务器文件,删除linux服务器文件。ganymed-ssh2远程操作服务器文件
java文件工具类,可多个文件,可文件夹。
java线程删除excel文件java线程删除excel文件java线程删除excel文件
JAVA删除文件夹下所有文件的简单方法:用简单的递归方法.只有20+行代码
java删除文件源码重命名文件夹文件 Java脚本代码可更改所有子文件夹和文件名,以便您可以将其删除。 对抗窗口“源文件名大于文件系统支持的文件”错误! 此脚本不会删除文件\文件夹! 它只会更改父文件夹内容的...
代码详细描写了Java删除整个目录以及文件功能,并且带有日志记录功能,代码清晰简单,如果朋友不太明白,可以给我留言我给你讲解。 其中运用到了递归思想,如果朋友您对递归不太熟悉,也可以多研究学习一下。代码...
本实例利用java强制删除使用中的文件,demo中删除的是mdb文件,首先利用jdbc获取mdb的数据库连接,再打开mdb文件,程序照样能强制删除!类似于360强制删除文件
xp操作系统,需要安装java虚拟机,填写正确的路径就可以删除文件或者文件夹
java程序 删除 文件夹里面的文件,用的递归,删除类型文件的后缀名可以修改,时间可以修改等等 仅供参考 下载即可使用 修改路径地址即可,地址在配置文件里面。