Предоставляет метод для работы с именами файлов без использования File Object. Он работает на разных операционных системах одинаково. Этот класс решает проблемы при переходе с машины для разработки на базе Windows на рабочую машину на основе Unix.
Декларация класса
Ниже приводится объявление для класса org.apache.commons.io.FilenameUtils.
public class FilenameUtils extends Object
Характеристики
Этот класс определяет шесть компонентов в имени файла. Рассмотрим пример расположения как C: \ dev \ project \ file.txt . Тогда компоненты —
- Префикс — C: \
- Относительный путь — dev \ project \
- Абсолютный путь — C: \ dev \ project \
- Имя — file.txt
- Базовое имя — файл
- Расширение — TXT
Чтобы определить каталог, добавьте разделитель к имени файла.
Пример класса FilenameUtils
IOTester.java
import java.io.IOException; import org.apache.commons.io.FilenameUtils; public class IOTester { public static void main(String[] args) { try { //Using FilenameUtils usingFilenameUtils(); } catch(IOException e) { System.out.println(e.getMessage()); } } public static void usingFilenameUtils() throws IOException { String path = "C:\\dev\\project\\file.txt"; System.out.println("Full Path: " +FilenameUtils.getFullPath(path)); System.out.println("Relative Path: " +FilenameUtils.getPath(path)); System.out.println("Prefix: " +FilenameUtils.getPrefix(path)); System.out.println("Extension: " + FilenameUtils.getExtension(path)); System.out.println("Base: " + FilenameUtils.getBaseName(path)); System.out.println("Name: " + FilenameUtils.getName(path)); String filename = "C:/commons/io/../lang/project.xml"; System.out.println("Normalized Path: " + FilenameUtils.normalize(filename)); } }
Выход
Будет напечатан следующий результат.