CodeGym /Java Blog /Willekeurig /Verwijder een bestand in Java
John Squirrels
Niveau 41
San Francisco

Verwijder een bestand in Java

Gepubliceerd in de groep Willekeurig
Als u nutteloze bestanden wilt verwijderen, verwijdert u ze met behulp van Java-methoden. Het verwijderen van bestanden en mappen in Java is een eenvoudig proces. Er is een reeks methoden om de taak uit te voeren - ontwikkelaars kunnen degene kiezen waarmee ze zich het meest op hun gemak voelen. Hier is een korte handleiding om onnodige Java-bestanden te verwijderen zonder uw code te breken. Laten we beginnen.

Hoe een bestand in Java te verwijderen met de methode java.io.File.Delete().

U kunt deze methode gebruiken om een ​​map of een bestand te verwijderen dat overeenkomt met de padnaam die u tussen haakjes hebt geplaatst. Houd er rekening mee dat een map, om te worden verwijderd, geen bestand moet hebben. Laten we eens kijken hoe we een bestand in Java kunnen verwijderen met behulp van File.Delete().Een bestand in Java verwijderen - 1

Java.io.File.Delete() declareren

Zo declareert u de methode om een ​​onnodig bestand te verwijderen:

// Java code for file deletion  
import java.io.*; 
  
public class Test 
{ 
    public static void main(String[] args) 
    { 
        File file = new File("C:\\Users\\Admin\\Files\\1.txt"); 
          
        if(file.delete()) 
        { 
            System.out.println("File deleted successfully"); 
        } 
        else
        { 
            System.out.println("Failed to delete the file"); 
        } 
    } 
}
Als u toegang heeft tot het bestand en als het bestaat, krijgt u het overeenkomstige rendement. In het geval dat het niet lukt, krijgt u de melding 'Kan het bestand niet verwijderen'.

Java.nio.files.deleteIfExists() gebruiken om Java-bestanden te verwijderen

Deze methode helpt Java-ontwikkelaars een bestand te verwijderen door het pad op te geven. Net als bij java.io.FileDelete(), zal de methode true retourneren als het bestand met succes is geopend en verwijderd, en de foutuitvoer weergeven als er iets mis is gegaan. De meest voorkomende reden voor java.nio.files.deleteIfExists()het mislukken is een verkeerde padnaam - simpel gezegd, er is geen bestand met overeenkomende parameters in de map die u hebt opgegeven. Om een ​​beter begrip te krijgen van if java.nio.files.deleteIfExists(), laten we eens kijken hoe het verschillende bestandstypes verwerkt:
  • Symbolische koppelingen - de koppeling, niet het bestand erachter, wordt verwijderd.
  • Directory's - een directory wordt met succes verwijderd zodra deze leeg is of alleen speciale vermeldingen bevat (alleen relevant voor enkele specificaties van de methode).
  • Bestanden - in de meeste gevallen, zolang het pad dat u in de methode hebt genoemd het juiste is en u toegang hebt tot het bestand, zal het met succes worden verwijderd. De specificaties van sommige besturingssystemen staan ​​ontwikkelaars echter niet toe om bestanden te verwijderen die momenteel geopend zijn.

Java.niofile.deleteIfExists declareren

Het declareren van de methode is eenvoudig - laten we eens kijken naar de algemene syntaxis.

public static boolean deleteIfExists(Path path)
                   throws IOException

Parameters van java.niofile.deleteIfExists

Er is een enkele parameter die een ontwikkelaar moet specificeren om de methode uit te voeren: het pad naar het bestand dat hij van het systeem wil verwijderen.

java.niofile.deleteIfExists retourneren

De methode heeft twee retourwaarden:
  • Toegegeven, wanneer het bestand soepel wordt verwijderd.
  • Onwaar, als er een fout in het proces zit (de map is niet leeg, het bestand bestaat niet, de ontwikkelaar heeft niet de benodigde machtigingen, enz.).

java.niofile.deleteIfExists uitzonderingen

Wat de uitzonderingen betreft, zijn er drie voorbeeldscenario's waar ontwikkelaars zich voor moeten schrap zetten:
  • DirectoryNotEmptyException - zoals de naam al doet vermoeden, betekent dit dat er een veld in uw directory staat. Zodra u ze ergens anders naartoe verplaatst, kunt u het verwijderen van de directory succesvol voltooien.
  • SecurityException - als een beveiligingsmanager op uw apparaat is geïnstalleerd, wordt een methode voor het verwijderen van bestanden overschreven door SecurityManager.checkdelete(String). Als gevolg hiervan krijgt een ontwikkelaar een uitzonderingswaarschuwing.
  • IOException heeft te maken met I/O-fouten - incompatibiliteit van de harde schijf, selectie van verouderde stuurprogramma's, enz.

Voorbeelden van het gebruik van deleteIfExists()


// Java program to show deleteIfExists() file handling
// java.nio.file.Files.deleteIfExists() method
  
import java.io.IOException;
import java.nio.file.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create object of Path
        Path path
            = Paths.get("D:\\Work\\Test\\file1.txt");
  
        // deleteIfExists File
        try {
  
            Files.deleteIfExists(path);
        }
        catch (IOException e) {
  
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

Voorbeeld #2


/ Sample Java deletion program
// java.nio.file.Files.deleteIfExists() method
  
import java.io.IOException;
import java.nio.file.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create an object of Path
        Path pathOfFile
            = Paths.get("D:\\Work\\Test\\"
                        + "text1.txt");
  
        // delete File if file exists
        try {
  
            boolean result
                = Files.deleteIfExists(pathOfFile);
  
            if (result)
                System.out.println("File is deleted");
            else
                System.out.println("File does not exists");
        }
        catch (IOException e) {
  
            // TODO Auto-generated catch block
            e.printStackTrace();

Conclusie

Dit zijn de belangrijkste manieren om bestanden in Java te verwijderen. Aangezien ze dezelfde parameters hebben, kunt u ze gerust door elkaar gebruiken. Na een paar keer oefenen met het verwijderen van Java-bestanden, zult u het zeker onder de knie hebben.
Opmerkingen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION