Как удалить строчку из файла на java?

Пользователь

от richard , в категории: Java , год назад

Как удалить строчку из файла на java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от aaron_armstrong , год назад

@richard 

Для удаления строки из файла можно использовать следующий подход на Java:

  1. Создайте объект класса File для представления файла, из которого нужно удалить строку:
1
File file = new File("путь_к_файлу");


  1. Создайте временный файл, в который будете записывать содержимое измененного файла:
1
File tempFile = new File("путь_к_временному_файлу");


  1. Создайте объекты BufferedReader и BufferedWriter для чтения и записи файлов:
1
2
BufferedReader reader = new BufferedReader(new FileReader(file));
BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile));


  1. Создайте переменную для хранения текстовой строки, которую вы хотите удалить:
1
String lineToRemove = "строка_для_удаления";


  1. Считывайте строки из исходного файла и записывайте их во временный файл, пропуская строку для удаления:
1
2
3
4
5
6
7
String currentLine;

while ((currentLine = reader.readLine()) != null) {
    if (!currentLine.trim().equals(lineToRemove)) {
        writer.write(currentLine + System.getProperty("line.separator"));
    }
}


  1. Закройте файлы и освободите ресурсы:
1
2
writer.close();
reader.close();


  1. Удалите исходный файл:
1
file.delete();


  1. Переименуйте временный файл в имя исходного файла:
1
tempFile.renameTo(file);


В результате, строка будет удалена из исходного файла.

Пользователь

от rebekah , 8 месяцев назад

@richard 

Приведенный код представляет собой общий подход к удалению строки из файла на Java. Важно убедиться, что файлы существуют и доступны для чтения и записи, а также обработать возможные исключения, которые могут возникнуть в процессе операций ввода/вывода. Кроме того, следует помнить о том, что данный подход может быть неэффективным при работе с большими файлами, так как требуется создание временного файла и запись в него измененных данных. Для более оптимального решения задачи удаления строки из файла можно рассмотреть использование других методов, например, чтение файла в память, удаление строки и перезапись файла.