File file = new File("d:" + File.separator + "1.xlsx"); String filename = file.getName(); System.out.println(filename.split("\.")[0]+filename.substring(0,filename.lastIndexOf(".")) ); System.out.println(filename.split("\.")[1]+filename.substring(0,filename.lastIndexOf(".")+1) );
前者split会出现问题,即如果文件名称含有多个点无法解析准确的文件名及拓展名。需使用后者substring 且 使用lastIndexOf 获取最后一个点前后的信息