bri*_*ian 26 java file-io android
我使用此代码删除所有文件:
File root = new File("root path");
File[] Files = root.listFiles();
if(Files != null) {
int j;
for(j = 0; j < Files.length; j++) {
System.out.println(Files[j].getAbsolutePath());
System.out.println(Files[j].delete());
}
}
Run Code Online (Sandbox Code Playgroud)
它将删除false Files[j]文件夹的位置.
我想删除文件夹及其所有子文件.
我怎么修改这个?
dug*_*ggu 59
检查此链接还从android中的内部存储中删除文件夹?.
void deleteRecursive(File fileOrDirectory) {
if (fileOrDirectory.isDirectory())
for (File child : fileOrDirectory.listFiles())
deleteRecursive(child);
fileOrDirectory.delete();
}
Run Code Online (Sandbox Code Playgroud)
Les*_*leh 33
最简单的方法是使用Apache Commons IO库中的FileUtils.deleteDirectory.
File dir = new File("root path");
FileUtils.deleteDirectory(dir);
Run Code Online (Sandbox Code Playgroud)
请记住,这也将删除包含目录.
在gradle文件中添加此行以获得Apache
compile 'org.apache.commons:commons-io:1.3.2'
Run Code Online (Sandbox Code Playgroud)
Ach*_*Jha 16
File file = new File("C:\\A\\B");
String[] myFiles;
myFiles = file.list();
for (int i=0; i<myFiles.length; i++) {
File myFile = new File(file, myFiles[i]);
myFile.delete();
}
B.delete();// deleting directory.
Run Code Online (Sandbox Code Playgroud)
您可以这样编写方法:删除dir.Returns下的所有文件和子目录如果所有删除都成功,则为true.如果删除失败,则该方法将停止尝试删除并返回false.
public static boolean deleteDir(File dir) {
if (dir.isDirectory()) {
String[] children = dir.list();
for (int i=0; i<children.length; i++) {
boolean success = deleteDir(new File(dir, children[i]));
if (!success) {
return false;
}
}
}
// The directory is now empty so delete it
return dir.delete();
}
Run Code Online (Sandbox Code Playgroud)
如果storageDir是一个目录
for(File tempFile : storageDir.listFiles()) {
tempFile.delete();
}
Run Code Online (Sandbox Code Playgroud)
对于您的情况,这非常有效 http://commons.apache.org/proper/commons-io/apidocs/org/apache/commons/io/FileUtils.html#cleanDirectory(java.io.File)
File dir = new File("dir_path");
if(dir.exists() && dir.isDirectory()) {
FileUtils.cleanDirectory(dir);
}
Run Code Online (Sandbox Code Playgroud)
如果你想删除文件夹本身。(它不必为空)。也可以用于文件。
File dir = new File("dir_path");
if(dir.exists()) {
FileUtils.forceDelete(dir);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
52499 次 |
| 最近记录: |