Java基础--I/O流--File类--删除

来源:互联网 发布:云图tv电视直播mac版 编辑:程序博客网 时间:2024/06/05 16:00

承接着上篇文章,此次说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 ⊙ )!

讲:我想这些基础的东西对于我来说有很大的用处,在以后开发的时候有很大的帮助,在开发的时候不至于用到的时候想不到这类知识。


0 0