承接着上篇文章,此次说File类--删除,主要是说的删除文件夹,因为删除文件夹中包括删除文件,删除文件夹显示删除文件,在是删除空文件夹。
我在Linux终端用vi方法写的,如下:因为代码太多,终端无法截屏,就找到了文档copy了。
import java.io.*;
public class DeleteFolder{
public void delFolder(String folderPath){
try{
//调用删除所有文件函数,删除该目录下的所有文件
delAllFile(folderPath);
File myFilePath = new File(folderPath);
myFilePath.delete();//调用删除目录函数
}catch(Exception e){
System.out.println("删除文件夹错误");
e.printStackTrace();
}
}
public void delAllFile(String path){//定义删除所有文件的方法,参数为文件路径
File file = new File (path);
if (!file.exists())
return;
if (!file.isDirectory())
return;
String [] tempList = file.list();//取出目录下的文件名和目录名
File temp = null;
for (int i = 0; i < tempList.length; i++){
System.out.println (tempList[i].toString());
if (path.endsWith(File.separator)){
temp = new File (path + tempList[i]);
}
else{
//为了删除目录下的每一个文件或目录创建File临时对象,参数为全路径
temp = new File (path + file.separator + tempList[i]);
}
if (temp.isFile())//如果temp是文件就删除
temp.delete();
if (temp.isDirectory())//如果是目录调用删除所有文件的方法,此时出现了delAllFile()方法的迭代调用
delAllFile(path + "/" + tempList[i]);
delFolder (path + "/" + tempList[i]);
}
}
public static void main (String [] args){
DeleteFolder deleteFolder = new DeleteFolder();
deleteFolder.delFolder (args[0]);
}
}
在编译的时候记得添加参数(文件或者文件夹都可以)
到此我在《Java:从入门到精通》上所了解到的关于File类全部的了。
( ⊙ o ⊙ )!
讲:我想这些基础的东西对于我来说有很大的用处,在以后开发的时候有很大的帮助,在开发的时候不至于用到的时候想不到这类知识。