有时候删除windows中的目录的时候,会出现"源文件名长度大于系统支持的长度", 而导致不能删除, 作为一个程序猿, 怎么可以被这个折服呢,
原理: 利用 Java 递归删除文件.
上代码:
import java.io.File; /** * @author 吴庆龙 * 2015年10月13日 下午1:22:33 */ public class DeleteFiles { public static void deleteFiles( File file ){ if( file.isDirectory() ){ // 如果是一个目录, 先查找这个目录下面的所有文件或目录 // 再根据情况删除 File[] files = file.listFiles(); if( files.length == 0 ){ //如果是一个空目录,直接删除 file.delete(); } else { // 如果不是空目录, 则递归 for( File f : files ){ deleteFiles(f); // 递归删除完之后, 再把本目录删除 f.delete(); } } } else { // 如果是一个文件,直接进行删除 file.delete(); } } public static void main(String[] args) { File file = new File("D:\\Program Files\\MyEclipse2015"); deleteFiles(file); } }