java删除文件夹及子目录

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");
    }

}
时间: 2024-11-01 21:11:36

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

Java删除文件夹和文件

Java删除文件夹和文件 以前在javaeye看到过关于Java操作文件的一篇文章,写的很好,但找了半天也没找到,就把找到底几篇文章整理一下,做个总结,算是一个学习备份…… 1,验证传入路径是否为正确的路径名(Windows系统,其他系统未使用) Java代码 // 验证字符串是否为正确路径名的正则表达式 private static String matches = "[A-Za-z]:\\\\[^:?\"><*]*"; // 通过 sPath.matches(

Java删除文件夹及其包含文件

1 package com; 2 3 import java.io.File; 4 5 public class Local_Utils { 6 7 /** 8 * 删除本地文件夹及包含文件 9 * @param dir 10 */ 11 public static void deleteLocalDir(String dir){ 12 File file=new File(dir); 13 if(file.exists()){ 14 //delete()方法不能删除非空文件夹,所以得用递归方式

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

删除文件夹(前提:文件夹为空以及InputStream和OutputStream等一些数据文件流关掉[close()],否则文件无法删除) //删除文件夹 public static void delFolder(String folderPath) { try { delAllFile(folderPath); //删除完里面所有内容 String filePath = folderPath; filePath = filePath.toString(); java.io.File myFil

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

删除文件夹 import java.io.File; public class DeleteDir { /** * @param args */ public static void main(String[] args) { File filedir = new File("D:\\360down"); deletedirect(filedir); System.out.println("over"); } /** * @param file */ private

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

import java.io.File; public class Test { public static void main(String args[]){ Test t = new Test(); delFolder("c:/bb"); System.out.println("deleted"); } //删除文件夹 //param folderPath 文件夹完整绝对路径 public static void delFolder(String folderP

java删除文件夹下面的所有文件(转)

原文地址:http://blog.csdn.net/smach1991710/article/details/9175757 删除一个文件夹下面的所有文件,一种调用递归算法,一种调用windows命令,下面是程序代码 import java.io.File; public class FileDemo { /** * 通过调用系统命令删除一个文件夹及下面的所有文件 * @param file */ public static void deleteFileByWinCom(File file){

Java删除文件夹--递归

对于文件操作实际上查看下JDK的File类的相关API即可,对于文件夹的删除主要是一个递归,参考代码如下: 01.public void delFolder(String filePath) { 02. 03. File folder = new File(filePath); 04. if(!folder.isDirectory()){ 05. folder.delete(); 06. }else if(folder.isDirectory()){ 07. String [] filelist

java删除文件夹

public static void clearDir(File file) { if (file.isDirectory()) { for (File f : file.listFiles()) { clearDir(f); f.delete(); } } file.delete(); }

删除文件、文件夹、子目录的工具类

1 package com.wdxc.util; 2 3 import java.io.File; 4 5 /** 6 * 文件删除 7 * 包括文件夹包含文件夹.文件的情况 8 * @author wangbo 9 * 10 */ 11 public class FileDelUtil { 12 13 14 /** 15 * 根据路径删除指定的目录或文件,无论存在与否 16 * @param sPath 要删除的目录或文件路径 17 * @return 删除成功返回 true,否则返回 fal