В недалеком прошлом оставил эту задачу до лучших времен и начал продвижение дальше.
Лучшие времена настали, но понять, что, все-таки, мешает "Успешно скопировать" один файл в другой до сих пор не могу.
Что-то мне подсказывает, что следовало бы строки 18-19 поместить в блок catch, но если это сделать, работать они только в этих пределах и будут.
Гуру, что я упустил?)
package com.javarush.task.task09.task0929;
/*
Обогатим код функциональностью!
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader readerr = new BufferedReader(new InputStreamReader(System.in));
try {
InputStream fileInputStrea = getInputStream(readerr.readLine());
} catch (FileNotFoundException e) {
System.out.println("Файл не существует.");
readerr.close();
}
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String newSourceFileName = reader.readLine();
InputStream fileInputStream = getInputStream(newSourceFileName); //берет копируемый файл again
String destinationFileName = reader.readLine(); //файл куда копируем
OutputStream fileOutputStream = getOutputStream(destinationFileName); //открывает запись в файл куда копируем
while (fileInputStream.available() > 0) { //если не пусто, считывает и записывает файл
int data = fileInputStream.read();
fileOutputStream.write(data);
}
fileInputStream.close(); //закрываем считывание
fileOutputStream.close(); //закрываем запись
}
public static InputStream getInputStream (String fileName) throws IOException {
return new FileInputStream(fileName);
}
public static OutputStream getOutputStream (String fileName) throws IOException {
return new FileOutputStream(fileName);
}
}