Hoe de FileNotFoundException in Java.io op te lossen

Hoe De Filenotfoundexception In Java Io Op Te Lossen



Tijdens het werken met de bestanden in Java kunnen er gevallen zijn waarin de ontwikkelaar een bestand onjuist opgeeft, d.w.z. een ongepast pad of een verkeerd gespelde bestandsnaam, of het bestand dat is verwijderd. In dergelijke situaties wordt de 'FileNotFoundException' geconfronteerd die een knelpunt wordt in de gestroomlijnde code. Daarom is het van vitaal belang om van deze beperking af te komen om de codefunctionaliteiten op de juiste manier te implementeren.

Deze blog zal de aangetroffen “ FileNotFoundException ' en de benaderingen om het op te lossen.







Hoe de FileNotFoundException in Java.io op te lossen?

De ' FileNotFoundException ” wordt weergegeven wanneer een bestand dat niet bestaat/in het systeem aanwezig is, wordt opgegeven om te worden geëvalueerd. Deze specifieke beperking kan worden opgelost door de ' juiste bestandsnaam/pad ” of gebruik de “ proberen te vangen 'blokken.



Importeer het volgende pakket in alle voorbeelden van dit artikel om alle functionaliteiten binnen de ' java.io ' pakket:



importeren java.io.* ;

Voorbeeld 1: ontmoeting met de 'FileNotFoundException' in Java

Dit voorbeeld demonstreert het voorvalscenario van de “ FileNotFoundException ”:





openbaar klas Filenotfoundfaced {
openbaar statisch leegte voornaamst ( Snaar [ ] argumenten ) gooit IOException {
Bestandslezer bestandspad = nieuw Bestandslezer ( 'bestand.txt' ) ;
Gebufferde Reader lezen = nieuw Gebufferde Reader ( bestandspad ) ;
Snaar dossier = nul ;
terwijl ( ( dossier = lezen. Lees regel ( ) ) != nul ) {
Systeem . uit . println ( dossier ) ;
}
lezen. dichtbij ( ) ;
} }

Volgens de bovenstaande coderegels:

  • Verklaar eerst een ' IOException ” om de problemen het hoofd te bieden tijdens het lezen van een bestand.
  • Maak daarna een ' Bestandslezer '-object met behulp van de ' nieuw ” trefwoord en de “FileReader()” constructor met het bestand dat gelezen moet worden als constructorargument.
  • Maak in de volgende stap een ' Gebufferde Reader ”-object om de inhoud van het bestand te lezen.
  • Pas nu de ' Lees regel() ' methode om de bestandsgegevens te lezen op basis van de opgegeven voorwaarde in de ' terwijl ” lus.

Uitgang



Aangezien het gespecificeerde bestand niet bestaat in het systeem, bevindt de besproken uitzondering zich in het bestandspad. Om er tijdens runtime mee om te gaan, geeft u de nauwkeurige ' bestandspad' of 'bestandsnaam ', als volgt:

Voorbeeld 2: oplossen van de 'FileNotFoundException' in Java met behulp van de 'try-catch'-blokken

De besproken beperking kan ook worden opgevangen door gebruik te maken van de “ proberen te vangen ” blokken:

openbaar klas Bestand niet gevonden {
openbaar statisch leegte voornaamst ( Snaar [ ] argumenten ) gooit IOException {
poging {
Bestandslezer bestandspad = nieuw Bestandslezer ( 'bestand.txt' ) ;
Gebufferde Reader lezen = nieuw Gebufferde Reader ( bestandspad ) ;
Snaar dossier = nul ;
terwijl ( ( dossier = lezen. Lees regel ( ) ) != nul ) {
Systeem . uit . println ( dossier ) ;
}
lezen. dichtbij ( ) ;
}
vangst ( FileNotFoundException Het is ) {
Systeem . uit . println ( 'Uitzondering afgehandeld!' ) ;
}
} }

Herhaal in dit codeblok alle besproken stappen, maar in de ' poging blokkeer in plaats daarvan. Voeg ook de besproken waarschijnlijke uitzondering toe, d.w.z. ' FileNotFoundException ' in het 'catch' -blok om er dienovereenkomstig mee om te gaan.

Uitgang

Het uitgevoerde resultaat houdt in dat de besproken uitzondering op de juiste manier wordt afgehandeld.

Conclusie

De ' FileNotFoundException ” wordt weergegeven wanneer een bestand (te evalueren) wordt opgegeven dat niet in het systeem bestaat. Het wordt opgelost door de ' nauwkeurig bestandspad/bestandsnaam ” of gebruik de “ proberen te vangen 'blokken. Dit artikel demonstreerde de benaderingen om met Java om te gaan ' FileNotFoundException ”.