Comment vérifier si un fichier existe en Java

Rupam Yadav 12 octobre 2023
  1. Utilisez java.io.File pour vérifier si un fichier existe en Java
  2. Utilisation de isFile() pour vérifier si le fichier existe en Java
  3. Utilisez Path.isFile() avec isFile() pour vérifier si le fichier existe ou non
Comment vérifier si un fichier existe en Java

Cet article examinera quelques moyens simples en Java pour vérifier si un fichier existe. Nous utiliserons différents paquets et classes lorsque nous voudrons savoir si le fichier spécifié existe.

Utilisez java.io.File pour vérifier si un fichier existe en Java

Le propre paquet d’entrées/sorties de Java, java.io.File, a la méthode exists() pour vérifier si le fichier spécifié existe. Cette fonction retourne un booléen, ce qui signifie que nous pouvons le mettre dans une déclaration conditionnelle.

Mais il y a un problème à utiliser uniquement la méthode exists() car elle peut aussi retourner true si nous spécifions accidentellement un répertoire. C’est pourquoi nous utiliserons également !File.isDirectory() pour nous assurer que l’argument donné est un fichier mais pas un répertoire.

import java.io.File;

public class Main {
  public static void main(String[] args) {
    File file1 = new File("sampleFile.txt");
    File file2 = new File("xyz.txt");

    // Checks if file1 exists
    if (file1.exists() && !file1.isDirectory()) {
      System.out.println(file1 + " Exists");
    } else {
      System.out.println(file1 + " Does not exists");
    }

    // Checks if file2 exists
    if (file2.exists()) {
      System.out.println(file2 + " Exists");
    } else {
      System.out.println(file2 + " Does not exists");
    }
  }
}

Production :

sampleFile.txt Exists xyz.txt Does not exists

Utilisation de isFile() pour vérifier si le fichier existe en Java

La méthode suivante pour vérifier si le fichier spécifié existe est d’utiliser la fonction isFile() du même paquet java.io.File que nous avons utilisé dans l’exemple précédent.

L’avantage de l’utilisation de isFile() par rapport à exists() est que nous n’avons pas à vérifier si le fichier spécifié est un répertoire ou non. Comme l’indique le nom de la fonction, elle ne vérifie que si c’est un fichier ou non.

import java.io.File;

public class Main {
  public static void main(String[] args) {
    File file = new File("sampleFile.txt");
    File directory = new File("E:/Work/java");

    if (file.isFile()) {
      System.out.println(file + " Exists");
    } else {
      System.out.println(file + " Do not Exist or it is a directory");
    }

    if (directory.isFile()) {
      System.out.println(directory + " Exists");
    } else {
      System.out.println(directory + " Do not Exist or it is a directory");
    }
  }
}

Production :

sampleFile.txt Exists E :\Work\java Do not Exist or it is a directory

Nous pouvons voir que si un répertoire existant est donné en argument à la fonction isFile(), il retourne false.

Utilisez Path.isFile() avec isFile() pour vérifier si le fichier existe ou non

Un autre paquet Java java.nio.file nous fournit des méthodes utiles comme toFile() et Paths. Nous pouvons obtenir le path en utilisant Paths.get() et le convertir ensuite en fichier en utilisant toFile.

Enfin, nous pouvons ramener la méthode que nous avons utilisée dans le dernier exemple, isFile(), et la combiner pour vérifier si le fichier existe.

import java.nio.file.Path;
import java.nio.file.Paths;

public class Main {
  public static void main(String[] args) {
    Path path = Paths.get("sampleFile.txt");

    if (path.toFile().isFile()) {
      System.out.println(path + " Exists");
    } else {
      System.out.println(path + " Do not Exists");
    }
  }
}

Production :

sampleFile.txt Exists
Auteur: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Article connexe - Java File