так работает:
try ( FileWriter fileWriter = new FileWriter(filename2, false))
{
for(int i = 0; i < arrayInt.length; i++){
String s = Integer.toString(arrayInt[i]);
fileWriter.write(s + " ");
}
}
а так нет:
FileWriter fileWriter = new FileWriter(filename2, false);
for(int i = 0; i < arrayInt.length; i++){
String s = Integer.toString(arrayInt[i]);
fileWriter.write(s + " ");
}
Тимур
22 уровень
почему запись в файл не работает без блока try
Решен
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Sasha Middle Java Developer в EPAM
11 июля 2021, 16:34решение
FileWriter выкидывает IOException при работе, следовательно его нужно перехватить, кроме того, поток нужно закрыть. Выше используется конструкция try-with-resources. Она дает возможность объявлять один или несколько ресурсов в блоке try, которые будут закрыты автоматически без использования finally блока и также она перехватит исключение.
Решение ниже опасно, потому что если в коде сгенерируется исключение, то close() не будет вызван. Произойдет утечка ресурса и т.д.
+2
Тимур
12 июля 2021, 06:47
спасибо 😉
0