John Squirrels
ระดับ
San Francisco

ลบไฟล์ใน Java

เผยแพร่ในกลุ่ม
หากคุณต้องการกำจัดไฟล์ที่ไม่มีประโยชน์ ให้ลบออกโดยใช้วิธีการ Java การลบไฟล์และไดเร็กทอรีใน Java เป็นกระบวนการที่ไม่ซับซ้อน มีหลายวิธีในการจัดการกับงาน - นักพัฒนาสามารถเลือกวิธีที่พวกเขาพอใจมากที่สุด ต่อไปนี้เป็นคำแนะนำสั้นๆ เพื่อกำจัดไฟล์ Java ที่ไม่จำเป็นโดยไม่ทำลายโค้ดของคุณ มาเริ่มกันเลย.

วิธีลบไฟล์ใน Java ด้วยวิธี java.io.File.Delete()

คุณสามารถใช้วิธีนี้เพื่อลบไดเร็กทอรีหรือไฟล์ที่ตรงกับชื่อพาธที่คุณใส่ไว้ในวงเล็บ โปรดทราบว่าไดเร็กทอรีที่ต้องการลบไม่จำเป็นต้องมีไฟล์ มาดูวิธีการลบไฟล์ใน Java โดยใช้File.Delete().ลบไฟล์ใน Java - 1

ประกาศ java.io.File.Delete()

นี่คือวิธีที่คุณประกาศวิธีการกำจัดไฟล์ที่ไม่จำเป็น:
// 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");
        }
    }
}
หากคุณสามารถเข้าถึงไฟล์และถ้ามีอยู่ คุณจะได้รับผลตอบแทนที่สอดคล้องกัน ในกรณีที่ล้มเหลว คุณจะได้รับข้อความแจ้งเตือนว่า "ไม่สามารถลบไฟล์ได้"

ใช้ java.nio.files.deleteIfExists() เพื่อลบไฟล์ Java

วิธีนี้ช่วยให้นักพัฒนา Java ลบไฟล์โดยระบุพาธ ในทำนองเดียวกันกับjava.io.FileDelete()เมธอดจะคืนค่าเป็น "จริง" หากเข้าถึงและลบไฟล์สำเร็จ และแสดงเอาต์พุตความล้มเหลวหากมีสิ่งผิดปกติเกิดขึ้น สาเหตุที่พบบ่อยที่สุดของjava.nio.files.deleteIfExists()ความล้มเหลวคือชื่อพาธผิด พูดง่ายๆ คือไม่มีไฟล์ที่มีพารามิเตอร์ตรงกันในไดเร็กทอรีที่คุณระบุ เพื่อความเข้าใจที่ลึกซึ้งยิ่งขึ้น if java.nio.files.deleteIfExists()ลองมาดูวิธีที่มันประมวลผลไฟล์ประเภทต่างๆ:
  • ลิงก์สัญลักษณ์ - ลิงก์ที่ไม่ใช่ไฟล์ที่อยู่เบื้องหลังจะถูกลบ
  • ไดเร็กทอรี - ไดเร็กทอรีจะถูกลบสำเร็จทันทีที่ว่างเปล่าหรือมีรายการพิเศษเท่านั้น (เกี่ยวข้องกับข้อมูลจำเพาะบางประการของเมธอดเท่านั้น)
  • ไฟล์ - ในกรณีส่วนใหญ่ ตราบใดที่เส้นทางที่คุณตั้งชื่อในเมธอดนั้นเป็นเส้นทางที่ถูกต้องและคุณสามารถเข้าถึงไฟล์ได้ ไฟล์นั้นจะถูกลบสำเร็จ อย่างไรก็ตาม ข้อกำหนดของระบบปฏิบัติการบางระบบไม่อนุญาตให้นักพัฒนาลบไฟล์ที่กำลังเปิดอยู่

ประกาศ java.niofile.deleteIfExists

การประกาศเมธอดนั้นตรงไปตรงมา - มาดูไวยากรณ์ทั่วไปของมันกัน
public static boolean deleteIfExists(Path path)
                   throws IOException

พารามิเตอร์ของ java.niofile.deleteIfExists

มีพารามิเตอร์เดียวที่นักพัฒนาต้องระบุเพื่อเรียกใช้เมธอด นั่นคือพาธไปยังไฟล์ที่เขาต้องการลบออกจากระบบ

java.niofile.deleteIfExists ส่งคืน

เมธอดมีค่าส่งคืนสองค่า:
  • จริงเมื่อไฟล์ถูกลบอย่างราบรื่น
  • เท็จ หากมีข้อผิดพลาดในกระบวนการ (ไดเร็กทอรีไม่ว่างเปล่า ไม่มีไฟล์อยู่ นักพัฒนาไม่ต้องการสิทธิ์ ฯลฯ)

ข้อยกเว้น java.niofile.deleteIfExists

สำหรับข้อยกเว้น มีสามตัวอย่างสถานการณ์ที่นักพัฒนาควรเตรียมใจสำหรับ:
  • DirectoryNotEmptyException - ตามชื่อที่แนะนำ สิ่งนี้หมายความว่ามีฟิลด์อยู่ในไดเร็กทอรีของคุณ เมื่อคุณย้ายไปที่อื่นแล้ว คุณจะสามารถดำเนินการลบไดเร็กทอรีได้สำเร็จ
  • SecurityException - หากมีการติดตั้งตัวจัดการความปลอดภัยในอุปกรณ์ของคุณ วิธีการลบไฟล์จะถูกแทนที่SecurityManager.checkdelete(String)ด้วย เป็นผลให้นักพัฒนาจะได้รับคำเตือนข้อยกเว้น
  • IOExceptionเกี่ยวข้องกับข้อผิดพลาด I/O - ความเข้ากันไม่ได้ของฮาร์ดไดรฟ์ การเลือกไดรเวอร์ที่ล้าสมัย ฯลฯ

ตัวอย่างของการใช้ 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();
        }
    }
}

ตัวอย่าง #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();

บทสรุป

นี่เป็นวิธีหลักในการลบไฟล์ใน Java เนื่องจากมีพารามิเตอร์เหมือนกัน คุณสามารถใช้แทนกันได้ หลังจากฝึกฝนการลบไฟล์ Java สักสองสามครั้ง คุณจะต้องติดใจอย่างแน่นอน
ความคิดเห็น
  • เป็นที่นิยม
  • ใหม่
  • เก่า
คุณต้องลงชื่อเข้าใช้เพื่อแสดงความคิดเห็น
หน้านี้ยังไม่มีความคิดเห็นใด ๆ