Directory有一个静态方法Delete用来删除指定的目录。它有两个重载版本删除为非空
浏览(1943).NETDirectory有一个静态方法Delete用来删除指定的目录。它有两个重载版本,如下:
2.Delete(String path, Boolean recursive)
解释:
方法1:唯一一个参数path,就是要删除的目录的路径可以是相对的也可以是绝对的。(相对当前工作的路径,可参考GetCurrentDirectory)。这个方法是用于删除空的目录。
方法2:第一个参数path是指定要删除的目录的路径(于第一个版本相同),重要的是第二个参数他指定是否要删除该目录下的子目录及文件,换句话说就是它可以删除非空目录。如果要删除非空目录则第二个参数 应为true(从它的参数名recursive称我们就可以知道它表示是否要递归删除)。这里主要要注意这个path。
举个例子:现在我们要删除的目录的路径为X:\dir。假设dir里头还有其他子目录和文件(非空)。
如果我们设置 path="X:\\dir" recursive=true;这样调用看起来没问题,但是执行的时候会抛出IOException 异常,告诉你dir非空。
正确的方法是修改的值为 "X:\\dir\\" (注意在后面多了一个“\\”)。
标签: