Apache Commons IO - DateinameUtils
Bietet eine Methode zum Arbeiten mit Dateinamen ohne Verwendung von File Object. Es funktioniert auf ähnliche Weise auf verschiedenen Betriebssystemen. Diese Klasse löst Probleme beim Wechsel von einem Windows-basierten Entwicklungscomputer zu einem Unix-basierten Produktionscomputer.
Klassenerklärung
Es folgt die Erklärung für org.apache.commons.io.FilenameUtils Klasse -
public class FilenameUtils
extends Object
Eigenschaften
Diese Klasse definiert sechs Komponenten innerhalb eines Dateinamens. Betrachten Sie einen Beispielstandort alsC:\dev\project\file.txt. Dann sind die Komponenten -
- Präfix - C: \
- Relativer Pfad - dev \ project \
- Absoluter Pfad - C: \ dev \ project \
- Name - file.txt
- Basisname - Datei
- Erweiterung - txt
Fügen Sie dem Dateinamen ein Trennzeichen hinzu, um ein Verzeichnis zu identifizieren.
Beispiel für die FilenameUtils-Klasse
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));
}
}
Ausgabe
Das folgende Ergebnis wird gedruckt.
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