0

我正在关注本教程 http://www.tutorialspoint.com/jsp/jsp_file_uploading.htm

我的问题是:上传时如何重命名文件名?如果名称已经存在,如何重命名文件?

4

1 回答 1

1

// Write the file在该部分正下方的后端 JSP 文件中

if( fileName.lastIndexOf("\\") >= 0 ){
  file = new File( filePath + 
  fileName.substring( fileName.lastIndexOf("\\"))) ;
}else{
  file = new File( filePath + 
  fileName.substring(fileName.lastIndexOf("\\")+1)) ;
}

// rename if file exists
int i = 1;
while (file.exists()) { // keep renaming as file_(2) , file_(3) etc.
    String path = file.getAbsolutePath();
    int iDot = path.lastIndexOf(".");
    file = new File(path.substring(0, iDot) +
           "_(" + ++i + ")" + path.substring(iDot));
}

fi.write( file ) ;

请注意,我假设文件总是以某些.ext扩展名结尾。

于 2013-08-05T04:13:07.850 回答