English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной учебник Java

Java управление потоком

Java массив

Java面向对象(I)

Java面向对象(II)

Java面向对象(III)

Обработка исключений Java

Java список (List)

Java Queue (очередь)

Java Map коллекция

Java Set коллекция

Java ввод/вывод (I/O)

Java Reader/Writer

Другие темы Java

Java программа для получения расширения файла

Java полные примеры

В этом примере мы изучим, как получить расширение файла Java.

Пример 1: Программа 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() - Возвращает символ"."Следующая строка..

Рекомендуется к прочтению:

Пример 2: Получение расширений всех файлов, существующих в директории

Теперь, предположим, что мы хотим получить расширения файлов, существующих в директории. Мы можем использовать этот процесс в цикле.

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

Java полные примеры