Java用File模糊删除少量文件
要同时删除不多的几个文件,不想再判断OS再用delete还是sudo rm,想写个通用的。搜了下g,正巧找到了。
import java.io.File;import java.util.ArrayList;import java.util.List;/** * 表1.常用的元字符 代码 说明. 匹配除换行符以外的任意字符\w 匹配字母或数字或下划线或汉字\s 匹配任意的空白符\d 匹配数字\b 匹配单词的开始或结束^ 匹配字符串的开始$ 匹配字符串的结束 * */public class TestFileDelete { public static void main(String args[]) { List<String> files = new ArrayList<String>(); File file = new File("C:\\Documents and Settings\\Administrator\\桌面\\正则"); /*String postfix = "^.*[.XXX]$";//以".XXX"结尾的文件 String contain = "^.*[XXX].*$";//名字包含"XXX"的文件 String prefix = "^[XXX].*$";//以"XXX"开头的文件*/ //String cc="0AA933E9-277D-4E77-B95F-876146452C6B"; String postfix = "^.*[.doc]$";//以".XXX"结尾的文件 String contain = "^.*[4E77].*$";//名字包含"XXX"的文件 String prefix = "^[d].*$";//以"XXX"开头的文件 File fileList[] = file.listFiles(); for (File f : fileList) { if (f.isFile()) { //if (f.getName().matches(postfix)) if (f.getName().matches(contain)) //if (f.getName().matches(prefix)) files.add(f.getName()); } } System.out.println(String.valueOf(files)); }}