File类有删除非空目录的方法吗?怎样删除非空目录,是用递规吗?

解决方案 »

  1.   

    好像没有,我都使用下面的函数:
    static public void deleteDirectory(File dir) throws IOException {
    if( (dir == null) || !dir.isDirectory) {
    throw new IllegalArgumentException("参数:"+dir+" 错误。请检查它是否是目录。");
    }
    File[] content = dir.listFiles( );
    int x = content.length;
    for(int i=0; i<x; i++) {
    if(content[i].isDirectory( )) {
    deleteDirectory(content[i]);
    } else {
    content[i].delete( );
    }
    }
    dir.delete();
    }