package test;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.File; public class DelFile { /**
* 删除某个文件夹下的所有文件夹和文件
*
* @param delpath
* String
* @throws FileNotFoundException
* @throws IOException
* @return boolean
*/
public static boolean deletefile(String delpath) throws Exception {
try { File file = new File(delpath);
// 当且仅当此抽象路径名表示的文件存在且 是一个目录时,返回 true
if (!file.isDirectory()) {
file.delete();
} else if (file.isDirectory()) {
String[] filelist = file.list();
for (int i = 0; i < filelist.length; i++) {
File delfile = new File(delpath + "\\" + filelist[i]);
if (!delfile.isDirectory()) {
delfile.delete();
System.out.println(delfile.getAbsolutePath() + "删除文件成功");
} else if (delfile.isDirectory()) {
deletefile(delpath + "\\" + filelist[i]);
}
}
System.out.println(file.getAbsolutePath() + "删除成功");
file.delete();
} } catch (FileNotFoundException e) {
System.out.println("deletefile() Exception:" + e.getMessage());
}
return true;
} /**
* 输出某个文件夹下的所有文件夹和文件路径
*
* @param delpath
* String
* @throws FileNotFoundException
* @throws IOException
* @return boolean
*/
public static boolean readfile(String filepath)
throws FileNotFoundException, IOException {
try { File file = new File(filepath);
System.out.println("遍历的路径为:" + file.getAbsolutePath());
// 当且仅当此抽象路径名表示的文件存在且 是一个目录时(即文件夹下有子文件时),返回 true
if (!file.isDirectory()) {
System.out.println("该文件的绝对路径:" + file.getAbsolutePath());
System.out.println("名称:" + file.getName());
} else if (file.isDirectory()) {
// 得到目录中的文件和目录
String[] filelist = file.list();
if (filelist.length == 0) {
System.out.println(file.getAbsolutePath()
+ "文件夹下,没有子文件夹或文件");
} else {
System.out
.println(file.getAbsolutePath() + "文件夹下,有子文件夹或文件");
}
for (int i = 0; i < filelist.length; i++) {
File readfile = new File(filepath + "\\" + filelist[i]);
System.out.println("遍历的路径为:" + readfile.getAbsolutePath());
if (!readfile.isDirectory()) {
System.out.println("该文件的路径:"
+ readfile.getAbsolutePath());
System.out.println("名称:" + readfile.getName());
} else if (readfile.isDirectory()) {
System.out.println("-----------递归循环-----------");
readfile(filepath + "\\" + filelist[i]);
}
} } } catch (FileNotFoundException e) {
System.out.println("readfile() Exception:" + e.getMessage());
}
return true;
} public static void main(String[] args) {
try {
// readfile("D:/file");
deletefile("E:/a");
} catch (Exception ex) {
ex.printStackTrace();
}
System.out.println("ok");
} }

java删除文件夹及子目录的更多相关文章

  1. Java删除文件夹和文件

    转载自:http://blog.163.com/wu_huiqiang@126/blog/static/3718162320091022103144516/ 以前在javaeye看到过关于Java操作 ...

  2. 【转】Java删除文件夹和文件

    原文网址:http://kxjhlele.iteye.com/blog/323657 以前在javaeye看到过关于Java操作文件的一篇文章,写的很好,但找了半天也没找到,就把找到底几篇文章整理一下 ...

  3. 用java删除文件夹里的所有文件

    import java.io.File; public class Test { public static void main(String args[]){ Test t = new Test() ...

  4. java删除文件夹下所有文件

    package org.sw; import java.io.File; /** * * @author mengzw * @since 3.0 2014-2-26 */ public class D ...

  5. java删除文件夹 Java中实现复制文件或文件夹

    删除文件夹 import java.io.File; public class DeleteDir { /** * @param args */ public static void main(Str ...

  6. java 删除文件夹 / 删除某文件夹下的所有文件

    import java.io.File; /*************************删除文件夹delFolder / 删除文件夹中的所有文件delAllFile *start******** ...

  7. java 删除文件夹中的所有文件及文件夹

    删除文件夹(前提:文件夹为空以及InputStream和OutputStream等一些数据文件流关掉[close()],否则文件无法删除) //删除文件夹 public static void del ...

  8. java删除文件夹

    想删除本地一个项目目录,结果windows说路径太长,不能删除.于是试了试java删除.一切ok.以后一定要抓紧时间学python. /** * Created by rmiao on 4/21/20 ...

  9. Java删除文件夹和其子文件、文件的拷贝和剪切

     1.递归删除目录下的所有文件及子目录下所有文件 //递归删除目录下的所有文件及子目录下所有文件 public static boolean deleteDir(File dir) { if (dir ...

随机推荐

  1. Node.js:REPL(交互式解释器)

    ylbtech-Node.js:REPL(交互式解释器) 1.返回顶部 1. Node.js REPL(交互式解释器) Node.js REPL(Read Eval Print Loop:交互式解释器 ...

  2. mysql5.7下面windows平台大小写敏感

    转自:https://blog.csdn.net/lrl219/article/details/52889582 根据网上的信息在my.ini下面的mysqld的配置下面添加lower_case_ta ...

  3. Java图片的压缩

    1.如果在springMvc中,会自带生成MultipartFile文件,将MultipartFile转化为File MultipartFile file1 = file; CommonsMultip ...

  4. No control record for Activity type 1000/4220/1442 in version 000 / 2017 activity planning/qty planning

    No control record for Activity type 1000/4220/1442 in version 000 / 2017 activity planning/qty plann ...

  5. Android 自定义控件——图片剪裁

    如图: 思路:在一个自定义View上绘制一张图片(参照前面提到的另一篇文章),在该自定义View上绘制一个自定义的FloatDrawable,也就是图中的浮层.绘制图片和FloatDrawable的交 ...

  6. DBGridEh checkbox的一个问题

    function TCustomDBGridEh.CheckBeginRowMoving(MouseX, MouseY: Integer; CheckInOnly: Boolean): Boolean ...

  7. oracle AWR详解

    原文地址:https://blog.csdn.net/elvis_lfc/article/details/52326148 啥是AWR? =============================== ...

  8. MySQL 5.7 安装过程中遇到的坑

    在安装的过程中遇到了几个坑,特地记录下来.启动的时候会有有个错误: 大意为mysql退出且更新不了pid文件. 查看error.log,如图: 大意为ibdtata1文件不够,初始化的时候页数太大.初 ...

  9. 洛谷P2894 [USACO08FEB]酒店Hotel_区间更新_区间查询

    Code: #include<cstdio> #include<algorithm> #include<cstring> using namespace std; ...

  10. KEEPALIVED+LVS+MYCAT实现MYSQL高可用环境搭建

    一.安装keepalived和ipvsadm 注意:ipvsadm并不是lvs,它只是lvs的配置工具. 为了方便起见,在这里我们使用yum的安装方式 分别在10.18.1.140和10.18.1.1 ...