package com.javarush.task.task18.task1808;
/*
Разделение файла
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String filenamemain = reader.readLine();
String filenamefirsthalf = reader.readLine();
String filenamesecondhalf = reader.readLine();
FileInputStream inputStream = new FileInputStream(filenamemain);
FileOutputStream outputStream1 = new FileOutputStream(filenamefirsthalf);
FileOutputStream outputStream2 = new FileOutputStream(filenamesecondhalf);
byte[]buffer = new byte[inputStream.available()];
int count = 0;
while(inputStream.available()>0){
count = inputStream.read(buffer);
}
inputStream.close();
if (!(count==0)){
outputStream1.write(buffer, 0, ((count/2) + 1));
outputStream2.write(buffer, (count/2)+2, count);
}else {
outputStream1.write(buffer, 0, count/2);
outputStream2.write(buffer, count/2+1, count);
}
reader.close();
outputStream1.close();
outputStream2.close();
}
}
Северин
41 уровень
2 и 3 пункт не проходит
Решен
Комментарии (7)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
IceBergMaster
12 ноября 2019, 14:40
А работает как, тестировал?
Что в arr содержится?
0
Северин
13 ноября 2019, 11:06
насколько я понял материал, то в массив arr, c длиной inputStream.available() у меня идёт запись всего блока байт с inputStream.
0
IceBergMaster
13 ноября 2019, 11:10
Не вижу подобной строки в твоём коде.
0
Северин
13 ноября 2019, 11:26
Сори, переделываю 3 раз, уже исправил код. что по этому скажете?
0
IceBergMaster
13 ноября 2019, 11:32
?Т.е. если count равно нулю, то выполняем блок записи из else?
0
Северин
13 ноября 2019, 11:42
отредактировал
0
Северин
13 ноября 2019, 16:59решение
домучал. ошибка была в понимании метода write.
Задача проста и логична
+2