Как удалить файл
[Как удалить файл]
Удалить файл в Java можно несколькими способами: с помощью стандартного API и с помощью сторонних библиотек. В этой статье мы рассмотрим три способа:
- с помощью Files.delete
- с помощью Files.deleteIfExists
- с помощью FileUtils.deleteQuietly
Примечание 1: если вместо файла передан путь к директории, указанная директория будет удалена, если она пуста.
Примечание 2: если вместо файла указана символическая ссылка, она будет удалена, но файл не будет затронут.
Удаление файла с помощью Files.delete
Первый способ удалить файл – это воспользоваться стандартным методом Files.delete:
try {
Files.delete(Paths.get("/home/alex/test"));
} catch (IOException x) {
System.err.println(x);
}
Стоит заметить, что метод Files.delete может генерировать исключения, поэтому его придётся завернуть в блок try-catch. Например, если указанный файл не найден, будет сгенерировано исключение NoSuchFileException .
Удаление файла с помощью Files.deleteIfExists
Следующий способ – использовать метод Files.deleteIfExists, который возвращает true или false в зависимости от того, получилось ли удалить указанный файл:
try {
Files.deleteIfExists(Paths.get("/home/alex/test"));
} catch (IOException e) {
System.err.println(e);
}
Также метод Files.deleteIfExists отличается от Files.delete тем, что не выбрасывает исключение NoSuchFileException в случае, если файл не найден.
Удаление файла с помощью FileUtils.deleteQuietly
Следующий способ – использовать библиотеку Commons IO. Для этого нужно подключить библиотеку в проект:
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.7</version>
</dependency>
И воспользоваться методом FileUtils.deleteQuietly:
FileUtils.deleteQuietly(new File("/home/alex/test"));
Этот метод не генерирует исключений в случае, если файл не найден или произошла другая ошибка при попытке удалить указанный файл.
Исходный код
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
import java.nio.file.*;
public class RemoveFile {
public static void main(String[] args) {
try {
Files.delete(Paths.get("/home/alex/test"));
} catch (IOException x) {
System.err.println(x);
}
try {
Files.deleteIfExists(Paths.get("/home/alex/test"));
} catch (IOException e) {
System.err.println(e);
}
FileUtils.deleteQuietly(new File("/home/alex/test"));
}
}
Заключение
В данной статье мы рассмотрели различные способы для того, чтобы удалить файл. Вы можете воспользоваться любым исходя из ваших требований.
Как удалить файл