CodeGym/Java blogg/Slumpmässig/Ta bort en fil i Java
John Squirrels
Nivå
San Francisco

Ta bort en fil i Java

Publicerad i gruppen
Om du vill bli av med onödiga filer, ta bort dem med Java-metoder. Att ta bort filer och kataloger i Java är en enkel process. Det finns en rad olika metoder för att hantera uppgiften - utvecklare kan välja den de är mest bekväma med. Här är en kort guide för att bli av med onödiga Java-filer utan att bryta koden. Låt oss börja.

Hur man tar bort en fil i Java med metoden java.io.File.Delete().

Du kan använda den här metoden för att ta bort en katalog eller en fil som matchar sökvägen du anger inom parentes. Tänk på att en katalog, för att kunna raderas, inte behöver ha någon fil. Låt oss ta en titt på hur man tar bort en fil i Java med File.Delete().Ta bort en fil i Java - 1

Deklarerar java.io.File.Delete()

Så här förklarar du metoden för att bli av med en onödig fil:
// 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");
        }
    }
}
Om du kan komma åt filen och om den finns får du motsvarande retur. I fallet med ett misslyckande får du en varning "Det gick inte att ta bort filen".

Använda java.nio.files.deleteIfExists() för att ta bort Java-filer

Den här metoden hjälper Java-utvecklare att ta bort en fil genom att ange dess sökväg. På samma sätt som java.io.FileDelete(), kommer metoden att returnera sant om filen öppnades och raderades framgångsrikt, och visar felutgången om något gick fel. Den vanligaste orsaken till java.nio.files.deleteIfExists()misslyckande är ett fel sökväg - enkelt uttryckt, det finns ingen fil med matchande parametrar i katalogen du angav. För att få en djupare förståelse om java.nio.files.deleteIfExists(), låt oss ta en titt på hur det bearbetar olika filtyper:
  • Symboliska länkar - länken, inte filen bakom den, raderas.
  • Kataloger - en katalog kommer att raderas framgångsrikt så snart den är tom eller bara har speciella poster (relevant endast för ett fåtal specifikationer av metoden).
  • Filer - i de flesta fall, så länge sökvägen du angav i metoden är den rätta och du har tillgång till filen, kommer den att raderas framgångsrikt. Specifikationerna för vissa operativsystem tillåter dock inte utvecklare att ta bort filer som för närvarande är öppna.

Deklarerar java.niofile.deleteIfExists

Att förklara metoden är okomplicerat - låt oss ta en titt på dess allmänna syntax.
public static boolean deleteIfExists(Path path)
                   throws IOException

Parametrar för java.niofile.deleteIfExists

Det finns en enda parameter som en utvecklare behöver specificera för att köra metoden - sökvägen till filen han vill ta bort från systemet.

java.niofile.deleteIfExists returnerar

Metoden har två returvärden:
  • Det är sant, när filen raderas smidigt.
  • Falskt, om det finns ett fel i processen (katalogen är inte tom, filen finns inte, utvecklaren har inte nödvändiga behörigheter, etc).

java.niofile.deleteIfExists undantag

När det gäller undantag finns det tre exempelscenarier som utvecklare bör rusta sig för:
  • DirectoryNotEmptyException - som namnet antyder betyder den här att det finns ett fält i din katalog. När du flyttar dem någon annanstans kommer du att kunna slutföra borttagningen av katalogen.
  • SecurityException - om en säkerhetshanterare är installerad på din enhet kommer en filraderingsmetod att åsidosättas av SecurityManager.checkdelete(String). Som ett resultat kommer en utvecklare att få en undantagsvarning.
  • IOException har att göra med I/O-fel - hårddiskinkompatibilitet, föråldrad drivrutinsval, etc.

Exempel på användning av 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();
        }
    }
}

Exempel #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();

Slutsats

Dessa är de viktigaste sätten att ta bort filer i Java. Eftersom de har samma parametrar, använd dem gärna omväxlande. Efter att ha övat radering av Java-filer ett par gånger kommer du definitivt att ha kläm på det.
Kommentarer
  • Populär
  • Ny
  • Gammal
Du måste vara inloggad för att lämna en kommentar
Den här sidan har inga kommentarer än