Чтобы удалить файл в Java, мы можем использовать delete()
метод из Files
класс. Мы также можем использовать delete()
для объекта, который является экземпляром File
класс.
Пример:
В приведенном ниже примере кода показано, как удалить файл с помощью Files
класс:
import java.io.IOException; import java.nio.file.*; public class DeleteFile {
public static void main(String[] args) {
Path path = FileSystems.getDefault().getPath('./src/test/resources/newFile.txt');
try {
Files.delete(path);
} catch (NoSuchFileException x) {
System.err.format('%s: no such' + ' file or directory%n', path);
} catch (IOException x) {
System.err.println(x);
}
} }
Приведенный выше код удаляет файл с именем newFile.txt
в ./src/test/resources/
каталог.
Кратное catch()
блоки будут улавливать любые ошибки, возникающие при удалении файла.
Вместо использования delete()
метод на Files
класс, мы также можем использовать delete()
для объекта, который является экземпляром File
класс.
Пример:
import java.io.File; public class DeleteFile {
public static void main(String[] args) {
File myFile = new File('./src/test/resources/newFile.txt');
if (myFile.delete()) {
System.out.println('Deleted the file: ' + myFile.getName());
} else {
System.out.println('Failed to delete the file.');
}
} }
В следующем коде используется deleteIfExists()
перед удалением файла.
import java.io.IOException; import java.nio.file.*; public class DeleteFile {
public static void main(String[] args) {
Path path = FileSystems.getDefault().getPath('./src/test/resources/newFile.txt');
try {
Files.deleteIfExists(path);
} catch (IOException x) {
System.err.println(x);
}
} }
В приведенном выше примере кода, если файл не существует, NoSuchFileException
не брошено.
Мы также можем использовать приведенный выше код для удаления папки.
Если папка не пуста, a DirectoryNotEmptyException
выбрасывается, поэтому мы должны явно перехватить исключение.
import java.io.IOException; import java.nio.file.*; public class DeleteFile {
public static void main(String[] args) {
Path path = FileSystems.getDefault().getPath('./src/test/resources');
try {
Files.deleteIfExists(path);
} catch (NoSuchFileException x) {
System.err.format('%s: no such' + ' file or directory%n', path);
} catch (DirectoryNotEmptyException x) {
System.err.format('%s not empty%n', path);
} catch (IOException x) {
System.err.println(x);
}
} }
Связанный: