JavaRush
AI Academy
new
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/подскажите пожалуйста что не так (((
Анна Ивашенцева
24 уровень
  • 18.12.2019
  • 493просмотров
  • 8комментариев

подскажите пожалуйста что не так (((

Вопрос по задаче Запись в файл с консоли
Java Core,  3 уровень,  11 лекция
Обсуждается


В этой задаче тебе нужно:

  1. Прочесть с консоли имя файла.
  2. Считывать строки с консоли, пока пользователь не введет строку "exit".
  3. Записать абсолютно все введенные в п.2 строки в файл: каждую строчку — с новой строки.

Требования:
  • Программа должна считывать c консоли имя файла.
  • Создай и используй объект типа BufferedWriter.
  • Программа не должна ничего считывать из файловой системы.
  • Программа должна считывать строки с консоли, пока пользователь не введет строку "exit".
  • Программа должна записать все введенные строки (включая "exit", но не включая имя файла) в файл: каждую строчку — с новой строки.
  • Метод main должен закрывать объект типа BufferedWriter после использования.
  • Метод main не должен выводить данные на экран.
....
package com.javarush.task.task13.task1319; import java.io.*; /* Писатель в файл с консоли */ public class Solution { public static void main(String[] args) { try { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); File file = new File("2.JavaCore\\src\\com\\javarush\\task\\task13\\task1319\\text.txt"); FileWriter fileWriter = new FileWriter(file); BufferedWriter writer = new BufferedWriter(fileWriter); String line = reader.readLine(); while(!line.equals("exit")) { reader.write(line); } reader.close(); writer.close(); } catch(Exception e) { System.out.println(e); } } }
0
Комментарии (8)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Анна Ивашенцева
Уровень 24
18 декабря 2019, 11:28
компилятор говорит , что не видит метод write
0
Ksenia VolkovaJava Developer в DXCMaster
18 декабря 2019, 11:32
А у ридера есть такой метод?
0
Анна Ивашенцева
Уровень 24
18 декабря 2019, 12:25
while (true){ String line = reader.readLine(); writer.write(line + "\r\n"); writer.write("exit"); if(line.equals("exit")) { reader.close(); writer.close();
0
Анна Ивашенцева
Уровень 24
18 декабря 2019, 12:26
почему компилятор вот так не пропускает пункт , чтобы включительно было добавлено exit ?
0
Илья
Уровень 20
18 декабря 2019, 12:31
Вам нужно сначала добавить слово "exit", а потом завершить цикл. Перепишите условие while.
0
Анна Ивашенцева
Уровень 24
19 декабря 2019, 08:57
while (true) { String s = reader.readLine(); list.add(s); if (s.equals("exit")) { break; } } for(String s : list) { writer.write(s + "\n"); } reader.close(); writer.close(); такой вариант прошел, но я понять не могу, почему exit добавился в список ? ведь в условии если(переменная равно exit) то цикл прекращается же
0
Илья
Уровень 20
19 декабря 2019, 10:04
Код отрабатывается по очереди:
while (true) {
            String s = reader.readLine();  // сначала получаете строку - "exit"
            list.add(s); // потом добавляете строку "exit" в список
            if (s.equals("exit")) { // и потом отрабатывается условие на сравнение строки с "exit" и программа завершается если true

            break;
            }
        }
+1
Илья
Уровень 20
19 декабря 2019, 10:06
В условии так же есть пункт: "Программа должна записать абсолютно все введенные строки (включая "exit") в файл, каждую строчку с новой строки."
+1
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush