Java实现的模糊匹配某文件夹下的文件并删除功能示例
程序员文章站
2023-11-12 14:16:40
本文实例讲述了java实现的模糊匹配某文件夹下的文件并删除功能。分享给大家供大家参考,具体如下:
package com.wyebd.gis;
import j...
本文实例讲述了java实现的模糊匹配某文件夹下的文件并删除功能。分享给大家供大家参考,具体如下:
package com.wyebd.gis; import java.io.file; /** * @title: delfiles.java * @package com.wyebd.gis * @description: * @author lisr * @date mar 7, 2012 5:36:03 pm * @version v1.0 */ public class delfiles { /** * @title: main * @description: * @param args * @return void * @author lisr * @date mar 7, 2012 5:36:04 pm * @throws */ //用以模糊删除头部为str的文件 public static boolean delfilesbypath(string path,string str){ //参数说明---------path:要删除的文件的文件夹的路径---------str:要匹配的字符串的头 boolean b=false; file file = new file(path); file[] tempfile = file.listfiles(); for(int i = 0; i < tempfile.length; i++){ if(tempfile[i].getname().startswith(str)||tempfile[i].getname().endswith(str)){ system.out.println("将被删除的文件名:"+tempfile[i].getname()); boolean del=deletefile(path+tempfile[i].getname()); if(del){ system.out.println("文件"+tempfile[i].getname()+"删除成功"); b=true; }else{ system.out.println("文件"+tempfile[i].getname()+"删除失败"); } } } return b; } private static boolean deletefile(string path){ system.out.println(path); boolean del=false; file file=new file(path); if(file.isfile()){ file.delete(); del=true; } return del; } public static void main(string[] args) { // todo auto-generated method stub string path="d:/temp/"; string str="44_"; if(delfilesbypath(path,str)){ system.out.println(path+"中包含"+str+"的文件已经全部删除成功!"); }else{ system.out.println(path+"中包含"+str+"的文件已经删除失败或该文件夹下不存在这类文件!"); } } }
package com.wyebd.gis; import java.io.file; /** * @title: delfiles.java * @package com.wyebd.gis * @description: * @author lisr * @date mar 7, 2012 5:36:03 pm * @version v1.0 */ public class delfiles { /** * @title: main * @description: * @param args * @return void * @author lisr * @date mar 7, 2012 5:36:04 pm * @throws */ //用以模糊删除头部为str的文件 public static boolean delfilesbypath(string path,string str){ //参数说明---------path:要删除的文件的文件夹的路径---------str:要匹配的字符串的头 boolean b=false; file file = new file(path); file[] tempfile = file.listfiles(); for(int i = 0; i < tempfile.length; i++){ if(tempfile[i].getname().startswith(str)||tempfile[i].getname().endswith(str)){ tempfile[i].delete(); b=true; } } return b; } public static void main(string[] args) { string path="d:/temp/"; string str="44_"; if(delfilesbypath(path,str)){ system.out.println(path+"中包含"+str+"的文件已经全部删除成功!"); }else{ system.out.println(path+"中包含"+str+"的文件已经删除失败或该文件夹下不存在这类文件!"); } } }
个人认为:如果要实现更高级的这种模糊匹配,只需要用string的indexof()
方法,凡是含有这个字符串的文件,都一并删除!
更多关于java算法相关内容感兴趣的读者可查看本站专题:《java文件与目录操作技巧汇总》、《java数据结构与算法教程》、《java操作dom节点技巧总结》和《java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
下一篇: php数组比较实现查找连续数的方法