Разделение пополам проходит, а вот 2/3 и 1/3 нет.
Понимаю, что усложнил код, но мне интерестно, что я сделал не так
Может быть, я не правильно делаю проверку на четность файла 1 ?
package com.javarush.task.task18.task1808;
/*
Разделение файла
*/
import java.io.*;
import java.util.ArrayList;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName1 = reader.readLine();
String fileName2 = reader.readLine();
String fileName3 = reader.readLine();
FileInputStream is = new FileInputStream(fileName1);
FileOutputStream ou1 = new FileOutputStream(fileName2);
FileOutputStream ou2 = new FileOutputStream(fileName3);
reader.close();
ArrayList<Integer> list = new ArrayList<>();
boolean evenNumb = false;
while (is.available() > 0) {
if (is.available() % 2 == 0) evenNumb = true;
int data = is.read();
list.add(data);
}
is.close();
int lenght = list.size();
if (evenNumb == true) {
for (int i = 0; i < list.size(); i++) {
if (i < lenght/2) ou1.write(list.get(i));
else if(i >= lenght/2) ou2.write(list.get(i));
}
}
else if (evenNumb == false) {
for (int i = 0; i < list.size(); i++) {
if ( i < lenght*0.75) ou1.write(list.get(i));
else if ( i > lenght*0.75) ou2.write(list.get(i));
}
}
ou1.close();
ou2.close();
}
}