在windows上,从别处复制的项目中可能带有.svn文件夹,手动删除太麻烦,并且每个文件夹下都有。所以写了个程序进行删除。因为.svn文件夹在windows上是只读的,所以用File中的delete()和deleteOnExist()方法都不能将其删除,所以只能采用windows命令方式进行删除,这里仅仅删除的是文件夹,删除文件需要大修!有时间再把它完善一下,代码如下!写的不好,请见谅!
import java.io.File; public class DeleteSpecificFolder { public static void deleteFolder(File file) throws Exception { File[] listFiles; String name = null; Runtime runtime = Runtime.getRuntime(); //删除以.svn结尾的文件夹 if (file.getName().endsWith(".svn")) { name = file.getAbsolutePath().toString(); //调用windows命令强制删除 runtime.exec("cmd /c rd/s/q " + file.getAbsolutePath()); System.out.println("删除文件:" + name); } else { if (file.isDirectory()) { listFiles = file.listFiles(); if (listFiles != null) for (File f : listFiles) { deleteFolder(f); } } } } public static void main(String[] args) throws Exception { //要删除的项目名称,绝对路径 deleteFolder(new File("C:/Users/Logic/Downloads/Zigbee_Node")); } }