当前位置:首页 > 全部子站 > IT > 思科认证

java认证:关于FileFilter使用的一点心得

来源:长理培训发布时间:2017-12-13 14:36:27

  现在要求输入一个文件的目录,之后将里面所有的备份文件删除,备份文件都是以".bak"或".BAK"结尾
  package TestFile;
  import java.io.File;
  import java.io.FileFilter;
  /**
  *
  * 用于过滤以.bak结尾或包含.bak的文件
  * 返回值的含义是 当包含该字符串时返回true
  */
  public class ListFilter implements FileFilter{
  @Override
  public boolean accept(File file) {
  //测试指定的文件(夹)是否应该包含在指定的列表中(就是测定作为过滤的条件是否满足)
  /*
  * 如果是目录的话,直接返回true 表示是满足条件的一情况
  */
  if(file.isDirectory()) return true;
  /*
  * 如果不是目录的话,通过判断在其名字里是否含有规定的字符,
  * 因为string的index方法在不满足条件(不含有指定的字符)是返回-1
  * 所以以此来确定是否满足条件
  */
  String name=file.getName();
  /*
  * int index=name.indexOf(".bak");
  * return index!=-1;
  * 这种方法不安全,可能会删除文件名中还含有.bak的文件,备份文件还可以用.BAK结尾
  */
  return name.endsWith(".bak")||name.endsWith(".BAK");
  }
  }
  使用此类
  package TestFile;
  import java.io.File;
  /**
  * @author Administrator
  * 涉及到递归调用
  */
  public class BakDelete{
  public static void main(String args){
  BakDelete bd=new BakDelete();
  bd.listBakFile(new File("E:""));
  }
  public void listBakFile(File file){
  File fs=file.listFiles(new ListFilter());
  for(int i=0;i

责编:罗莉

发表评论(共0条评论)
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,发表审核后显示!

国家电网校园招聘考试直播课程通关班

  • 讲师:刘萍萍 / 谢楠
  • 课时:160h
  • 价格 4580

特色双名师解密新课程高频考点,送国家电网教材讲义,助力一次通关

配套通关班送国网在线题库一套

课程专业名称
讲师
课时
查看课程

国家电网招聘考试录播视频课程

  • 讲师:崔莹莹 / 刘萍萍
  • 课时:180h
  • 价格 3580

特色解密新课程高频考点,免费学习,助力一次通关

配套全套国网视频课程免费学习

课程专业名称
讲师
课时
查看课程
在线题库
面授课程更多>>
图书商城更多>>
在线报名
  • 报考专业:
    *(必填)
  • 姓名:
    *(必填)
  • 手机号码:
    *(必填)
返回顶部