package com.javarush.task.task13.task1319;
import java.io.*;
/*
Писатель в файл с консоли
*/
public class Solution {
/* public static void main(String[] args) {
String outputFileName = "E:/Programmer/test.txt";
try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
try (BufferedWriter writer = new BufferedWriter(new FileWriter(outputFileName))) {
String line;
while (!(line = reader.readLine()).equals("exit")) { // Прерывание цикла при написании строки exit
writer.write(line);
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
*/
public static void main(String[] args) throws IOException {
String outputFileName = "E:/Programmer/test.txt";
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter writer = new BufferedWriter(new FileWriter(outputFileName));
String line;
while (!(line = reader.readLine()).equals("exit")) {
writer.write(line);
}
}
}
lastix
35 уровень
Почему второй вариант (без try catch) не записывает ничего в файл?
Решен
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
lastix
13 февраля 2021, 18:00
А почему его не нужно закрывать, когда используем try catch?
0
Андрей Сердюк
15 февраля 2021, 21:05
Потому что это не просто try catch, a try-with-resources. Вот здесь доступно https://habr.com/ru/post/178405/
+1
lastix
13 февраля 2021, 17:59
Понял, спасибо)
0
Ksenia Volkova Java Developer в DXC Master
13 февраля 2021, 17:56решение
Потому что ты забыл закрыть BufferedWriter.
+2