package com.javarush.task.task18.task1825;
import java.io.*;
import java.util.*;
/*
Собираем файл
*/
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
ArrayList<String> list = new ArrayList<>();
String file = "";
while (true){
file = reader.readLine();
if(file.equals("end")){
break;
}
else {
list.add(file);
}
}
Collections.sort(list);
String newFile = list.get(0).replaceAll("part\\d", ".");
OutputStream outStream = new FileOutputStream(newFile);
for (int i = 0; i < list.size(); i++) {
InputStream inStream = new FileInputStream(list.get(i));
byte[] byteArr = new byte[inStream.available()];
while (inStream.available() > 0)
{
int count = inStream.read(byteArr);
outStream.write(byteArr, 0, count);
}
inStream.close();
}
reader.close();
outStream.close();
}
}
Alice Koshova
29 уровень
Обсуждается
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Shamil
7 марта 2019, 23:41
По моему все ошибки потому что нету BufferedWriter, BufferedReader надо - вот это потоки
0
Андрей Старжинский
6 марта 2019, 16:21
В данном случае проще юзать TreeMap с ключем = N (partN);
0
Артем
6 марта 2019, 13:14
отсортируй чтобы имена файлов шли по алфавиту и по порядку номера частей шли.
lion.avi.part1
lion.avi.part2
lion.avi.part3
в твоей сортировке сейчас
будет
lion.avi.part1
lion.avi.part11 //так не должно быть
lion.avi.part2
lion.avi.part3
0
--------Master
6 марта 2019, 12:54
Допустим, первым в списке значение "c:\file.txt.part150". Что будет присвоено переменной newFile вместо "c:\file.txt"?
0