Как очистить файл java
Перейти к содержимому

Как очистить файл java

  • автор:

Удалить содержимое файла в Java

В этом руководстве мы увидим, как мы используем Java для удаления содержимого файла без удаления самого файла. Поскольку есть много простых способов сделать это, давайте рассмотрим каждый по отдельности.

2. Использование PrintWriter ​

Класс PrintWriter языка Java расширяет класс Writer . Он печатает форматированное представление объектов в поток вывода текста.

Мы проведем простой тест. Давайте создадим экземпляр PrintWriter , указывающий на существующий файл, удалив существующее содержимое файла, просто закрыв его, а затем убедимся, что длина файла пуста:

 new PrintWriter(FILE_PATH).close();   assertEquals(0, StreamUtils.getStringFromInputStream(new FileInputStream(FILE_PATH)).length()); 

Также обратите внимание, что если нам не нужен объект PrintWriter для дальнейшей обработки, это лучший вариант. Однако, если нам нужен объект PrintWriter для дальнейших файловых операций, мы можем сделать это по-другому:

 PrintWriter writer = new PrintWriter(FILE_PATH);  writer.print("");   // other operations  writer.close(); 

3. Использование FileWriter ​

FileWriter Java — это стандартный класс Java IO API, который предоставляет методы для записи символьных данных в файл.

Давайте теперь посмотрим, как мы можем сделать ту же операцию, используя FileWriter:

 new FileWriter(FILE_PATH, false).close(); 

Точно так же, если нам нужен объект FileWriter для дальнейшей обработки, мы можем присвоить его переменной и обновить с помощью пустой строки.

4. Использование FileOutputStream ​

FileOutputStream Java — это выходной поток, используемый для записи байтовых данных в файл.

Теперь давайте удалим содержимое файла с помощью FileOutputStream:

 new FileOutputStream(FILE_PATH).close(); 

5. Использование Apache Commons IO FileUtils ​

Apache Commons IO — это библиотека, содержащая служебные классы, помогающие решать распространенные проблемы с вводом-выводом. Мы можем удалить содержимое файла, используя один из его служебных классов — FileUtils.

Чтобы увидеть, как это работает, давайте добавим зависимость Apache Commons IO к нашему pom.xml :

 dependency>   groupId>commons-iogroupId>   artifactId>commons-ioartifactId>   version>2.11.0version>   dependency> 

После этого давайте рассмотрим быстрый пример, демонстрирующий удаление содержимого файла:

 FileUtils.write(new File(FILE_PATH), "", Charset.defaultCharset()); 

6. Использование файлов Java NIO ​

Файл Java NIO был представлен в JDK 7. Он определяет интерфейсы и классы для доступа к файлам, атрибутам файлов и файловым системам.

Мы также можем удалить содержимое файла, используя java.nio.file.Files :

 BufferedWriter writer = Files.newBufferedWriter(Paths.get(FILE_PATH));  writer.write("");  writer.flush(); 

7. Использование файлового канала Java NIO ​

Java NIO FileChannel — это реализация NIO для подключения файла. Он также дополняет стандартный пакет Java IO .

Мы также можем удалить содержимое файла, используя java.nio.channels.FileChannel :

 FileChannel.open(Paths.get(FILE_PATH), StandardOpenOption.WRITE).truncate(0).close(); 

8. Использование гуавы​

Guava — это библиотека на основе Java с открытым исходным кодом, которая предоставляет служебные методы для выполнения операций ввода-вывода. Давайте посмотрим, как использовать API Guava для удаления содержимого файла.

Во-первых, нам нужно добавить зависимость Guava в наш pom.xml :

 dependency>   groupId>com.google.guavagroupId>   artifactId>guavaartifactId>   version>31.0.1-jreversion>   dependency> 

После этого давайте посмотрим на быстрый пример удаления содержимого файла с помощью Guava:

 File file = new File(FILE_PATH);   byte[] empty = new byte[0];   com.google.common.io.Files.write(empty, file); 

9. Заключение​

Подводя итог, мы видели несколько способов удаления содержимого файла без удаления самого файла.

Полную реализацию этого руководства можно найти на GitHub .

  • 1. Введение
  • 2. Использование PrintWriter
  • 3. Использование FileWriter
  • 4. Использование FileOutputStream
  • 5. Использование Apache Commons IO FileUtils
  • 6. Использование файлов Java NIO
  • 7. Использование файлового канала Java NIO
  • 8. Использование гуавы
  • 9. Заключение

Очистка файла

Очистка файла
Работаю с помощью BufferedWriter: fileWriter = new PrintWriter(new BufferedWriter(new.

Очистка файла
Здравствуйте! Я читаю и файла таким образом: while (scn.hasNext())

Очистка файла
Как мне очистить текстовой файл с помощью Python?

Очистка файла
Как можно удалить все содержимое файла site.ru/1.txt ? *уже нашел file_put_contents("имя.

1562 / 1040 / 94
Регистрация: 17.04.2009
Сообщений: 2,995
Весь код покажи.
Регистрация: 28.10.2011
Сообщений: 219
Попробуйте так:

1 2 3 4 5
File myFile = new File(str2); if (myFile.exists()) { myFile.delete(); myFile.createNewFile() }

При условии что — str2 — String.

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Очистка файла
Всем привет! Такая задача: из запроса POST получить имя файла и очистить его (не удалить).

Очистка файла
Доброго времени сутко! Подскажите пожалуйста, как очистить файл средствами node.js? Или удалить.

Очистка FPT файла
Есть таблица с МЕМО полями, по мере занесения в них данных растёт размер FPT файла. При достижении.

Очистка содержимого файла
Не могу разобраться (: Пишу программу чтобы удаляла содержимое текстового документа ( именно.

Нужно очистить текстовый файл и записать после очистки новые данные

Есть .txt файл, он должен с помощью кода очищаться, и после очищения в него нужно записать новую информацию.

Отслеживать
950 1 1 золотой знак 7 7 серебряных знаков 13 13 бронзовых знаков
задан 15 сен 2019 в 17:10
53 7 7 бронзовых знаков

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Используйте OpenOption , чтобы указать, на каких условиях хотите открыть файл.

OpenOption[] oo4 = new OpenOption[] ; Path path4 = Paths.get("C:\\Temp\\oo4.txt"); try (OutputStream out = Files.newOutputStream(path4, oo4); PrintStream outps = new PrintStream(out);) < // какая-то запись в файл через outps >catch (IOException e)

При этом содержимое файла очистится, даже если никакой записи в него не было. При использовании . new OpenOption[] < StandardOpenOption.CREATE>; вместо . new OpenOption[] ; содержимое файла очистится, только если хоть какая-нибудь запись в него была произведена.

Удалить содержимое файла, не удаляя себя в Java

В этом посте будет обсуждаться, как удалить содержимое файла, не удаляя сам файл в Java.

1. Использование BufferedWriter

Простое решение — получить BufferedWriter с Files.newBufferedWriter(…) метод с TRUNCATE_EXISTING стандартный открытый вариант. Он обрезает файл до длины 0, если он уже существует (при открытии для записи).

Полное использование показано ниже с использованием оператора try-with-resource (Java 7+), который автоматически позаботится о закрытии открытых потоков и каналов:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *