Объясните пожалуйста "Создай поток для записи в файл без суффикса [.partN] в папке" - вообще тайга. Подскажите что переделать чтоб работало и почему не работает такая-то строчка. Премного благодарен за потраченное время!
package com.javarush.task.task18.task1825;
/*
Собираем файл
*/
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
public class Solution {
public static void main(String[] args) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String fileName;
ArrayList<String> list = new ArrayList<>();
try {
while (true) {
fileName = reader.readLine();
if (fileName.equals("end")) {
break;
} else {
// File fileCreated = new File("D:\\mytasks\\hard\\" + fileName);// так программа файл в папке не создает.
list.add("C:\\mytasks\\hard\\" +fileName);
}
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
Collections.sort(list);
try {
FileOutputStream fos2 = new FileOutputStream(list.get(0).substring(0, list.get(0).lastIndexOf(".part1")), true);
//FileOutputStream fos2 = new FileOutputStream("C:\\mytasks\\hard\\Lion.avi", true);
BufferedOutputStream bos2 = new BufferedOutputStream(fos2);
for (String s : list) {
BufferedInputStream bis2 = new BufferedInputStream(new FileInputStream(s));
// if (bis2.available() > 0) {// без проверки, т.к. мы файлы-то не заполняли!
byte[] buffer = new byte[bis2.available()];
bos2.write(buffer);
// }
bis2.close();
bos2.close();
}
fos2.close();
bos2.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/*
Lion.avi.part1
Lion.avi.part2
Lion.avi.part3
end
*/