多文件同名文件的后缀的生成,如aa.txt aa(1).txt, aa(2).txt

沙落雁 关注

收藏于 : 2017-09-22 17:19   被转藏 : 1   

package test;

import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
import java.util.concurrent.atomic.AtomicInteger;
public class MultiFileNaming{
 AtomicInteger s=new AtomicInteger();
 public static void main(String[] args) throws IOException {
	   String name="aa.txt";
	   final String regex="("+name.substring(0,name.indexOf("."))+"\\([\\d+]\\)\\."+name.substring(name.indexOf(".")+1)+")|("+name+")";
	   
	   String dir=System.getProperty("user.dir");      
	   File file=new File(dir);
	   synchronized (file) {
		   File[] listFiles=file.listFiles(new FilenameFilter(){
				@Override
				public boolean accept(File dir, String name) {
					return name.matches(regex);
				}
			  });
			    //说明已经存在
			   if(listFiles.length>0){
				   name=name.substring(0,name.indexOf("."))+"("+listFiles.length+")."+name.substring(name.indexOf(".")+1);
			   }      
			   File newFile=new File(dir,name);
			   newFile.createNewFile();	
	}
	   
}
}

   结果:

 其中aa就是所要生成的文件 同名文件aa(1).txt ,aa(2).txt
 

   

 阅读文章全部内容  
点击查看
文章点评
相关文章
沙落雁 关注

文章收藏:1313

TA的最新收藏