Add index to filename for existing file (file.txt => file_1.txt)

后端 未结 4 820
孤城傲影
孤城傲影 2021-01-23 05:18

I want to add an index to a filename if the file already exists, so that I don\'t overwrite it.

Like if I have a file myfile.txt and same time myfile.

4条回答
  •  野性不改
    2021-01-23 05:50

    Untested Code:

    File f = new File(filename);
    String extension = "";
    int g = 0;
    int i = f.lastIndexOf('.');
    extension = fileName.substring(i+1);
    
    while(f.exists()) {      
      if (i > 0) 
      {  f.renameTo(f.getPath() + "\" + (f.getName() + g) + "." + extension); }
      else
      {  f.renameTo(f.getPath() + "\" + (f.getName() + g)); }     
    
      g++;    
    }
    

提交回复
热议问题