С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/47: Рейтинг темы: голосов - 47, средняя оценка - 4.94
2 / 2 / 1
Регистрация: 21.03.2015
Сообщений: 72

Удаление строки из текстового файла

13.06.2019, 08:59. Показов 8953. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
Пишу функцию, которая будет удалять строку из текстового файла. В данную функцию я передаю слово, далее функция читает файл по строчно, каждую считанную строку разделяю и проверяю совпадения первого слова со словом, которое было передано в функцию. Если оно совпало, то строка не записывается в новый файл, иначе производится запись в новый файл. По окончанию первый файл я удаляю, а второй переименовываю. Но проблема в том, что возникает ошибка, не могу понять по какой причине она возникает.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public boolean DeleteInfoUsers(String deleteString) {
      File sourceFile = new File("Login.txt");
      File outputFile = new File("tmpLogin.txt");
      
      try {
         BufferedReader reader = new BufferedReader(new FileReader(sourceFile));
         BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile));
         
         String deleteLine;
         
         while((deleteLine = reader.readLine()) != null) {
            String[] Buffer = deleteLine.split(" ");
            String tmp = Buffer[0];
            System.out.println(Buffer[0]);
            
            if(!deleteString.equals(tmp)) {
               writer.write(deleteLine);
               writer.newLine();
            }
            
            sourceFile.delete();
            outputFile.renameTo(sourceFile);
            
            reader.close();
            writer.close();
         }
 
      } catch(IOException err) { System.out.println("Ошибка"); }
      return false;
   }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.06.2019, 08:59
Ответы с готовыми решениями:

Удаление одной строки из текстового файла
Задача, такая. Надо удалить определенную строку из файла. Использую я вот такой метод, он удаляет строку и перезаписывает её в новый файл....

Удаление строки из текстового файла
Здравствуйте, помогите исправить проблему, есть программа которая при запуске записывает данные в txt файл например dhfhhf:sds. Мне нужно...

Удаление строки из текстового файла
Добро всем! :senor: У меня возникла задача удалить из txt, тоесть выбираю строку в мемо затем нахожу ее в файле и удаляю. вот начало: ...

3
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
13.06.2019, 09:57
Цитата Сообщение от zzzLoLzzz Посмотреть сообщение
Но проблема в том, что возникает ошибка, не могу понять по какой причине она возникает.
ты ее напишешь или предоставишь нам возможность подагадываться?

Цитата Сообщение от zzzLoLzzz Посмотреть сообщение
} catch(IOException err) { System.out.println("Ошибка"); }
вот тут? ты хоть стектрейс выведи, понятнее будет
0
 Аватар для Aviz__
2736 / 2046 / 506
Регистрация: 17.02.2014
Сообщений: 9,462
13.06.2019, 12:01
Цитата Сообщение от zzzLoLzzz Посмотреть сообщение
не могу понять
а нам, как это сделать, если ты скрываешь, что говорит jvm?
0
 Аватар для Goongala
1022 / 562 / 185
Регистрация: 18.08.2013
Сообщений: 2,027
Записей в блоге: 2
13.06.2019, 15:04
Можно всю считанную информацию сохранить в массив и после выполнения основного блока программы просто записать это в тот же самый файл

Добавлено через 5 минут
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
            Scanner in = new Scanner(new File("file.txt"), "UTF-8");
            ArrayList<String> data = new ArrayList<>();
            String check;
            while (in.hasNextLine()) {
                check = in.nextLine();
                if (!check.startsWith(str))
                        data.add(check);
            }
            PrintWriter out = new PrintWriter(new FileWriter("file.txt", false));
            for (String s : data)
                out.println(s);
            in.close();
            out.close();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.06.2019, 15:04
Помогаю со студенческими работами здесь

Удаление строки из текстового файла
Здравствуйте, нужно удалить все четные числа из файла .txt. Не могу никак найти удаление строки из файл Вот мой код: class Program ...

Удаление строки с номером k из текстового файла
Пожалуйста, помогите с задачей: &quot;Дано число k и текстовый файл. Удалить из файла строку с номером k (строки нумеруются от 0). Если строки...

RemoveString: удаление строки из текстового файла
И снова всем привет. Возник следующий вопрос удаления строки из текстового файла, сделал такую процедуру, но не удаляет строку. В файле 3...

Полное удаление строки текстового файла
Помогите кто знает, облазит уж точно половину C# Cyberфорума, ничего не нашел подомного имеется текстовый документ (порядка 180 различных...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru