code: public static String getFileNameWithoutExtension(String filePath) {
          if (StringUtils.isEmpty(filePath)) {
              return filePath;
          }
  
          int extenPosi = filePath.lastIndexOf(FILE_EXTENSION_SEPARATOR);
          int filePosi = filePath.lastIndexOf(File.separator);
          if (filePosi == -1) {
              return (extenPosi == -1 ? filePath : filePath.substring(0, extenPosi));
          }
          if (extenPosi == -1) {
              return filePath.substring(filePosi + 1);
          }
          return (filePosi < extenPosi ? filePath.substring(filePosi + 1, extenPosi) : filePath.substring(filePosi + 1));
      }
docs: get file name from path, not include suffix
  <p/>
  <pre>
  getFileNameWithoutExtension(null)               =   null
  getFileNameWithoutExtension("")                 =   ""
  getFileNameWithoutExtension("   ")              =   "   "
  getFileNameWithoutExtension("abc")              =   "abc"
  getFileNameWithoutExtension("a.mp3")            =   "a"
  getFileNameWithoutExtension("a.b.rmvb")         =   "a.b"
  getFileNameWithoutExtension("c:\\")              =   ""
  getFileNameWithoutExtension("c:\\a")             =   "a"
  getFileNameWithoutExtension("c:\\a.b")           =   "a"
  getFileNameWithoutExtension("c:a.txt\\a")        =   "a"
  getFileNameWithoutExtension("/home/admin")      =   "admin"
  getFileNameWithoutExtension("/home/admin/a.txt/b.mp3")  =   "b"
  </pre>
  
  @param filePath
  @return file name from path, not include suffix
  @see