文件重命名方法(类似于下载时重复下载)

   一个可用于COPY功能默认名字使用



public class RenameUtil {
                                                                                                                       
    public static String newName(String name, String type) {
        if(name.lastIndexOf("(") <= 0 || name.lastIndexOf(")") <= 0) {
            return name+ "("+ 1 +")" + type;
        }
        int begin = name.lastIndexOf("(");  //获得name中最后一个"("字符串的位置
        int end = name.lastIndexOf(")");  //查看name中最后一个")"字符串的位置
        if ((end - begin) <= 1) {
            return name+ "("+ 1 +")" + type;
        }
        String oldNum = name.substring(begin+1, end);
        int newNum = NumberUtils.toInt(oldNum) + 1; //将获得的字符串转为整型并且加1
        String nname= name.substring(0, begin);
        return  nname + "("+ newNum +")" +type ;  //递归查询一边并生成新的name字符串
                                                                                                                           
//      if(name.lastIndexOf("(") > 0) {  //查看name中最后一个(字符串的位置,小于0所以没有则反回name(1),有则继续
//          if (name.lastIndexOf(")") > 0) {  //查看name中最后一个)字符串的位置,小于0所以没有则反回name(1),有则继续
//              int begin = name.lastIndexOf("(");  //获得name中最后一个(字符串的位置
//              int end = name.lastIndexOf(")");  //查看name中最后一个)字符串的位置
//              String oldNum = name.substring(begin+1, end);  //获得查看name中最后一个(与最后一个)中间的字符串
//              if ((end - begin) > 1) {  //判断()中是否有字符串,如果没有字符串则返回name(1),有则继续
//                  int newNum = NumberUtils.toInt(oldNum) + 1; //将获得的字符串转为整型并且加1
//                  String nname= name.substring(0, begin);  //获得name中最后一个(字符串的位置之前的字符串
//                  return  nname + "("+ newNum +")" +type ;  //递归查询一边并生成新的name字符串
//              } else  return name+ "("+ 1 +")" + type;
//          } else  return name+ "("+ 1 +")" + type;
//      } else  return name+ "("+ 1 +")" + type;
    }



参数1为文件名字,参数2位文件类型(可为空)

下面给个简单的调用

private String newTitle(String name,long userid){
    if(lessonDao.countByTitle(name,userid) > 0 ) {  //如果文件名在数据库中不等于空
        return newTitle(RenameUtil.newName(name, ""),userid);
    } else {
        return name;
    }
}

lessonDao.countByTitle为对数据库操作方法,

你可能感兴趣的:(重命名)