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