Пожалуйста, подскажите, где ошибка?
package com.javarush.task.task18.task1808;
/*
Разделение файла
*/
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
public class Solution {
public static void main(String[] args) throws Exception{
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String file1 = reader.readLine();
String file2 = reader.readLine();
String file3 = reader.readLine();
FileInputStream fileInputStream1 = new FileInputStream(file1);
FileOutputStream fileOutputStream2 = new FileOutputStream(file2);
FileOutputStream fileOutputStream3 = new FileOutputStream(file3);
int count = fileInputStream1.available();
byte[] all = new byte[fileInputStream1.available()];
if(count%2 == 0){
fileInputStream1.read(all);
fileOutputStream2.write(all, 0,count%2 );
fileOutputStream3.write(all, count%2+1, count%2);
}else{
fileInputStream1.read(all);
fileOutputStream2.write(all, 0,count%2+1);
fileOutputStream3.write(all, count%2+2, count%2-1);
}
fileInputStream1.close();
fileOutputStream2.close();
fileOutputStream3.close();
}
}
/*
Разделение файла
Считать с консоли три имени файла: файл1, файл2, файл3.
Разделить файл1 по следующему критерию:
Первую половину байт записать в файл2, вторую половину байт записать в файл3.
Если в файл1 количество байт нечетное, то файл2 должен содержать большую часть.
Закрыть потоки.
Требования:
1. Программа должна три раза считать имена файлов с консоли.
2. Для чтения из файла используй поток FileInputStream, для записи в файлы - FileOutputStream
3. Первую половину байт из первого файла нужно записать во второй файл.
4. Вторую половину байт из первого файла нужно записать в третий файл.
5. Потоки FileInputStream и FileOutputStream должны быть закрыты.
*/
