/* Разделение файла
Считать с консоли три имени файла: файл1, файл2, файл3.
Разделить файл1 по следующему критерию:
Первую половину байт записать в файл2, вторую половину байт записать в файл3.
Если в файл1 количество байт нечетное, то файл2 должен содержать бОльшую часть.
Закрыть потоки ввода-вывода
*/
import java.io.*;
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 filereader = new FileInputStream(fileName1);
FileOutputStream file2writer = new FileOutputStream(fileName2);
FileOutputStream file3writer = new FileOutputStream(fileName3);
while (filereader.available() > 0)
{
if (filereader.available() % 2 == 0)
{
byte[] buffer = new byte[filereader.available() / 2];
byte[] buffer1 = new byte[filereader.available() / 2];
int count = filereader.read(buffer);
int count1 = filereader.read(buffer1);
file2writer.write(buffer, 0, count / 2);
file3writer.write(buffer1, 0, count1 / 2);
} else
{
byte[] buffer = new byte[filereader.available() / 2 + 1];
byte[] buffer1 = new byte[filereader.available() / 2];
int count = filereader.read(buffer);
int count1 = filereader.read(buffer1);
file2writer.write(buffer, 0, count);
file3writer.write(buffer1, 0, count1);
}
}
reader.close();
file2writer.close();
filereader.close();
file3writer.close();
}
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ