CodeGym /Blog Java /Aleatoriu /Cum să verificați dacă un fișier există în Java
John Squirrels
Nivel
San Francisco

Cum să verificați dacă un fișier există în Java

Publicat în grup

De ce trebuie să verificăm dacă un fișier „există?”

În timp ce se ocupă de operațiuni cu fișiere (citire/scriere/creare/ștergere/actualizare etc), mulți începători se pot întreba de ce trebuie chiar să verificăm dacă există un fișier? Răspunsul adecvat la acest lucru ar fi, pentru a evita NoSuchFileException , este întotdeauna o modalitate mai sigură de a accesa un fișier. În consecință, trebuie să verificați dacă există un fișier înainte de a-l accesa pentru a evita orice excepții de rulare.Cum să verificați dacă un fișier există în Java - 1

Cum se verifică folosind metoda file.exists()?

Java oferă o metodă booleană simplă, file.exists() , care nu necesită niciun parametru pentru a verifica fișierul relevant pe o cale dată. Când verificați existența unui fișier, luați în considerare 3 scenarii.
  • Fișierul este găsit.
  • Fișierul nu este găsit.
  • Starea fișierului este necunoscută dacă permisiunile nu sunt acordate (din motive de securitate).
Metoda File.exists() returnează „ adevărat ” dacă fișierul este găsit. În cazul în care nu este găsit sau accesul eșuat, returnează „ false ”.

Exemplu

Să aruncăm o privire la un exemplu de cod simplu pentru a vedea implementarea.

package com.java.exists;
import java.io.File;

public class ExistsMethodInJava {

	public static void main(String[] args) {

		String filePath = "C:\\Users\\Lubaina\\Documents\\myNewTestFile.txt";
		File file = new File(filePath);

		// check if the file exists at the file path
		System.out.println("Does File exists at \"" + filePath + "\"?\t" + file.exists());
		
		filePath = "C:\\Users\\Lubaina\\Documents\\myOtherTestFile.txt";
		File nextFile = new File(filePath);
		
		// check if the file exists at the file path
		System.out.println("Does File exists at \"" + filePath + "\"?\t" + nextFile.exists());
	}
}
Ieșire
Există fișierul la „C:\Users\Lubaina\Documents\myNewTestFile.txt”? true Există fișierul la „C:\Users\Lubaina\Documents\myOtherTestFile.txt”? fals
Vă rugăm să rețineți că metoda file.exists() funcționează și pentru căile „ director ”. Dacă verificați o cale de director validă cu această metodă, va returna true sau false altfel. Pentru o mai bună înțelegere, puteți arunca o privire la următorul bloc de cod.

package com.java.exists;
import java.io.File;

public class CheckFileExists {

	// check if the "file" resource exists and not "directory"
	public static boolean checkFileExists(File file) {
		return file.exists() && !file.isDirectory();
	}

	public static void main(String[] args) {

		String directoryPath = "C:\\Users\\Lubaina\\Documents\\javaContent";
		File direcotry = new File(directoryPath);

		// check if the directory exists at the dir path
		if (direcotry.exists()) {
			System.out.println("Direcotry at \"" + directoryPath + "\" exists.\n");
		} else {
			System.out.println("Direcotry at \"" + directoryPath + "\" does not exist.\n");
		}

		// check if the resource present at the path is a "file" not "directory"
		boolean check = checkFileExists(direcotry);
		System.out.println("Is the resource \"" + direcotry + "\" a File? " + check);

		String filePath = "C:\\Users\\Lubaina\\Documents\\myNewTestFile.txt";
		File file = new File(filePath);
		check = checkFileExists(file);
		System.out.println("Is the resource \"" + file + "\" a File? " + check);
	}
}
Ieșire
Directorul la „C:\Users\Lubaina\Documents\javaContent” există. Este resursa „C:\Users\Lubaina\Documents\javaContent” un fișier? false Este resursa „C:\Users\Lubaina\Documents\myNewTestFile.txt” un fișier? Adevărat
După cum puteți vedea din rezultat, directorul numit „javaContent” a fost validat prin metoda exists() . Deci, dacă doriți în mod special să verificați dacă un fișier nu este un director, puteți utiliza metoda booleană isDirectory() furnizată de clasa File în Java.

Concluzie

Până la sfârșitul acestei postări, trebuie să fiți familiarizat cu cum să verificați dacă un fișier există în Java. Puteți scrie propriile programe pentru a testa și înțelege această funcționalitate. Odată ce vă simțiți confortabil, puteți explora și alte modalități de a verifica prezența unui fișier (de exemplu, folosind link-uri simbolice sau clasa nio). Succes și codare fericită! :)

Mai multe lecturi:

Comentarii
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION