Apache Commons IO - FilenameUtils

Dosya Nesnesi kullanmadan dosya adlarıyla çalışma yöntemi sağlar. Farklı işletim sistemlerinde benzer şekilde çalışır. Bu sınıf, Windows tabanlı bir geliştirme makinesinden Unix tabanlı bir üretim makinesine geçerken karşılaşılan sorunları çözer.

Sınıf Beyanı

Aşağıdaki beyanı org.apache.commons.io.FilenameUtils Sınıf -

public class FilenameUtils
   extends Object

Özellikleri

Bu sınıf, bir dosya adı içinde altı bileşen tanımlar. Örnek bir konumu düşününC:\dev\project\file.txt. O zaman bileşenler -

  • Önek - C: \
  • Göreli Yol - dev \ proje \
  • Mutlak yol - C: \ dev \ proje \
  • İsim - file.txt
  • Temel ad - dosya
  • Uzantı - txt

Bir dizini tanımlamak için dosya adına bir ayırıcı ekleyin.

FilenameUtils Sınıfı Örneği

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));
   }
}

Çıktı

Aşağıdaki sonucu yazdıracaktır.

Full Path: C:\dev\project\
Relative Path: dev\project\
Prefix: C:\
Extension: txt
Base: file
Name: file.txt
Normalized Path: C:\commons\lang\project.xml