我是Java的新手,我想知道是否有办法删除可能包含某些文件的文件夹,就像" rm -rf目录/& #34;在命令行中。
这就是我正在做的事情。
public static boolean checkUnzippedExistence(String deleteKeyword) {
List<String> foldersList = new ArrayList<String>();
String absPath = Environment.getExternalStorageDirectory().getPath();
File[] files = new File(absPath).listFiles();
boolean existence = false;
if (files != null) {
for (int i = 0; i < files.length; i++) {
if (files[i].isDirectory() && files[i].getName().contains(deleteKeyword)) {
//some method/function to delete
}
}
existence = true;
}
return existence;
}
提前致谢。
答案 0 :(得分:1)
您可以使用Apache Commons FileUtils。它包含可用于文件操作的强大实用程序方法:
Apache Commons的Gradle依赖:
compile group: 'commons-io', name: 'commons-io', version: '2.4'
答案 1 :(得分:0)
下面的代码将帮助您确定给定的文件是否符合您的条件。
public static boolean checkUnzippedExistence(String deleteKeyword) {
List<String> foldersList = new ArrayList<String>();
String absPath = Environment.getExternalStorageDirectory().getPath();
File[] files = new File(absPath).listFiles();
deleteDirectory(files)
}
private boolean deleteDirectory(File[] files) {
if (files == null) {
return true;
}
for(int i=0; i<files.length; i++) {
if(files[i].isDirectory()) {
deleteDirectory(files[i]);
}
else {
files[i].delete();
}
}
}
return( path.delete() );
}