Копируем содержимое файла. При окончании процесса копировани закрываем потоки. Или нет?
static void copy(String in, String out) throws IOException {
InputStream input = null;
OutputStream output = null;
try {
input = new FileInputStream(in);
output = new FileOutputStream(out);
byte[] array = new byte[1024];
int count;
while ((count = input.read(array)) >= 0) {
output.write(array, 0, count);
}
} finally {
if (input != null) input.close();
if (output != null) output.close();
}
}
Ну да! Как и ожидалось при возникновении ошибки при закрытии первого потока второй закрыт не будет. Главный урок этой задачи: обрабатывайте любые проверяемые исключения, которые могут произойти в блоке finally.
Комментариев нет:
Отправить комментарий