English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этом примере мы изучим, как получить расширение файла Java.
import java.io.File; class Main { public static void main(String[] args) { File file = new File("Test.java"); //Конвертация имени файла в строку 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() - Возвращает символ"."Следующая строка..
Рекомендуется к прочтению:
Теперь, предположим, что мы хотим получить расширения файлов, существующих в директории. Мы можем использовать этот процесс в цикле.
import java.io.File; class Main { public static void main(String[] args) { File directory = new File("Directory"); //Вывод всех файлов, существующих в директории File[] files = directory.listFiles(); System.out.println("файл\t\t\tрасширение"); for(File file : files) { //Конвертация имени файла в строку String fileName = file.toString(); int index = fileName.lastIndexOf('.'); if(index > 0) { String extension = fileName.substring(index + 1); System.out.println(fileName + "\t" + extension); } } } }
результат вывода
файл расширение Directory\file1.txt txt Directory\file2.svg svg Directory\file3.java java Directory\file4.py py Directory\file5.html html
ВниманиеВыход программы зависит от каталога, который вы используете, и файлов, содержащихся в этом каталоге.
Если вы используете библиотеку Gauva, вы можете напрямую использовать метод getFileExtension() для получения расширения файла. Например,
String fileName = "Test.java"; String extension = Files.getFileExtension(fileName);
Кроме того, Apache Commons IO предоставляет класс FilenameUtils, который предоставляет метод getExtension для получения расширения файла.
String extension = FilenameUtils.getExtension("file.py") // возвращает py