示例 1: Java 程序获取文件扩展名
import java.io.File; class Main { public static void main(String[] args) { File file = new File("Test.java"); // convert the file name into string String fileName = file.toString(); int index = fileName.lastIndexOf('.'); if(index > 0) { String extension = fileName.substring(index + 1); System.out.println("File extension is " + extension); } } }
在上面的例子中,
file.toString()-将 File
对象转换为字符串。
fileName.lastIndexOf('.')-返回最后出现的字符。由于所有文件扩展名都以 '.' 开头,所以我们使用字符 '.'.
fileName.substring()-返回字符 '.' 之后的字符串。
示例 2: 获取目录中所有文件的文件扩展名
现在,假设我们想要获取目录中所有文件的文件扩展名。我们可以在循环中使用上述过程。
import java.io.File; class Main { public static void main(String[] args) { File directory = new File("Directory"); // list all files present in the directory File[] files = directory.listFiles(); System.out.println("Files\t\t\tExtension"); for(File file : files) { // convert the file name into string String fileName = file.toString(); int index = fileName.lastIndexOf('.'); if(index > 0) { String extension = fileName.substring(index + 1); System.out.println(fileName + "\t" + extension); } } } }
输出
Files Extension Directory\file1.txt txt Directory\file2.svg svg Directory\file3.java java Directory\file4.py py Directory\file5.html html
注意: 程序的输出取决于您使用的目录和目录中的文件。
getFileExtension()
方法获取文件扩展名。例如,
String fileName = "Test.java"; String extension = Files.getFileExtension(fileName);
String extension = FilenameUtils.getExtension("file.py") // returns py