у меня вопрос такого характера
вот я понимаю как работает подобное чтение и запись в файл
BufferedReader reader = new BufferedReader (new InputStreamReader (System.in));
FileOutputStream fileOutputStream1 = new FileOutputStream (reader.readLine (), true);
FileInputStream fileInputStream2 = new FileInputStream (reader.readLine ());
FileInputStream fileInputStream3 = new FileInputStream (reader.readLine ());
while (fileInputStream2.available () > 0) {
int data = fileInputStream2.read ();
fileOutputStream1.write (data);
}
но это побайтого и ресурсоёмкое
а вот это решение с буфером я не понимаю как происходит чтение и записи если мы это делаем без цикла
особенно непонятно как работает byte[] buffer = new byte[fileInputStream2.available ()]; какая роль у записи fileInputStream2.available () как элемента массива
byte[] buffer = new byte[fileInputStream2.available ()];
fileInputStream2.read (buffer);
fileOutputStream1.write (buffer);
fileInputStream2.close ();