Имя файла из полного пути в Java — методы Path.getFileName и File.getName

Программа на Java для получения имени файла из его абсолютного пути.

Для понимания этого примера нужно знать следующие темы Java:

  • Класс java.io.File

  • Строки в Java

Пример 1: имя файла через getName()

import java.io.File;

class Main {

  public static void main(String[] args) {

    // link to file Test.class
    File file = new File("C:\\Users\\Sudip Bhandari\\Desktop\\Programiz\\Java Article\\Test.class");

    // get file name using getName()
    String fileName = file.getName();
    System.out.println("File Name: " + fileName);

  }
}

Вывод:

File Name: Test.class

В примере выше мы использовали метод getName() класса File для получения имени файла.

Пример 2: имя файла с помощью методов строк

Имя файла из абсолютного пути можно получить также с помощью методов класса String.

import java.io.File;

class Main {

  public static void main(String[] args) {
    File file = new File("C:\\Users\\Sudip Bhandari\\Desktop\\Programiz\\Java Article\\Test.class");

    // convert the file into the string
    String stringFile = file.toString();

      int index = stringFile.lastIndexOf('\\');
      if(index > 0) {
        String fileName = stringFile.substring(index + 1);
        System.out.println("File Name: " + fileName);
      }
  }
}

Вывод:

File Name: Test.class

В примере выше:

  • file.toString() — преобразует объект File в строку.

  • stringFile.lastIndexOf() — возвращает позицию последнего вхождения символа „\“ в stringFile.

  • stringFile.substring(index + 1) — возвращает подстроку, начиная с позиции index + 1.