windows文件夹嵌套太多,导致无法删除的解决方法
发布时间:2020-12-14 02:36:00 所属栏目:Windows 来源:网络整理
导读:import java.io.File;public class DeleteUtils{ public static void main(String[] args) { File dir = new File("D:codeNCESpliter_NCE"); renameDirRecursively(dir); System.out.println("renameDirRecursively success"); deleteRecursively(dir)
import java.io.File; public class DeleteUtils { public static void main(String[] args) { File dir = new File("D:codeNCESpliter_NCE"); renameDirRecursively(dir); System.out.println("renameDirRecursively success"); deleteRecursively(dir); System.out.println("deleteRecursively success"); } private static void renameDirRecursively(File dir) { File[] listFiles = dir.listFiles(); if (listFiles != null) { int subIndex = 0; for (File file : listFiles) { boolean isDir = file.isDirectory(); StringBuilder afterName = new StringBuilder(); subIndex = renameFile(file,subIndex,afterName); if (isDir) { renameDirRecursively(new File(afterName.toString())); } } } } private static int renameFile(File file,int index,StringBuilder afterName) { String newName = file.getParent() + File.separator + index; if (afterName != null) { afterName.append(newName); } if (newName.equals(file.getAbsolutePath())) { return index + 1; } boolean success = file.renameTo(new File(newName)); if (success) { return index + 1; } else { return renameFile(file,index + 1,afterName); } } private static void deleteRecursively(File file) { if (file.isDirectory()) { File[] listFiles = file.listFiles(); if (listFiles != null) { for (File subFile : listFiles) { deleteRecursively(subFile); } } file.delete(); } else { file.delete(); } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows – 如何在使用WIX卸载期间避免“应关闭以下应用程序
- “无法找到指定的过程”错误与.NET 4
- windows-phone-8 – Windows phone 8性能进度条
- 有没有办法让Windows重新加载驱动程序而不重启?
- Windows与Linux文件互传
- windows-server-2008-r2 – 将Windows Server 2008 R2从标准
- windows-server-2008 – 为远程用户添加第二台Exchange服务
- windows – 如何让for循环使用逗号分隔的字符串?
- .net – Windows上的Percona Server 5.5或MariaDB
- windows-server-2003 – Windows Server 2003内存问题