Apache Commons IO - Nom de fichierUtils

Fournit une méthode pour travailler avec les noms de fichiers sans utiliser l'objet de fichier. Il fonctionne sur différents systèmes d'exploitation de la même manière. Cette classe résout les problèmes lors du passage d'une machine de développement Windows à une machine de production Unix.

Déclaration de classe

Voici la déclaration pour org.apache.commons.io.FilenameUtils Classe -

public class FilenameUtils
   extends Object

traits

Cette classe définit six composants dans un nom de fichier. Prenons un exemple d'emplacement commeC:\dev\project\file.txt. Ensuite, les composants sont -

  • Préfixe - C: \
  • Chemin relatif - dev \ project \
  • Chemin absolu - C: \ dev \ project \
  • Nom - file.txt
  • Nom de base - fichier
  • Extension - txt

Pour identifier un répertoire, ajoutez un séparateur au nom de fichier.

Exemple de classe 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));
   }
}

Production

Il imprimera le résultat suivant.

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