Any tips on what I'm doing wrong?
package com.codegym.task.task18.task1825;
import java.io.*;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
/*
Building a file
*/
public class Solution {
public static void main(String[] args) throws IOException {
HashMap<Integer, String> fileList = new HashMap<>();
String finalName = null;
Scanner scanner = new Scanner(System.in);
ArrayList<Integer> list = new ArrayList<>();
while (true) {
String fileName = scanner.nextLine();
if (fileName.equals("end")) {
break;
}
finalName = fileName;
String stringNum = fileName.replaceAll(".*\\.part", "");
int partNum = Integer.parseInt(stringNum);
fileList.put(partNum,fileName);
list.add(partNum);
}
Collections.sort(list);
String completeFile = finalName.replaceAll("\\.part.*", "");
File newFile = new File(completeFile);
if (!newFile.exists()) {
newFile.createNewFile();
}
try (FileOutputStream outputStream = new FileOutputStream(newFile, true)) {
for (Integer val: list) {
String temp = fileList.get(val);
File file = new File(temp);
try (FileInputStream inputStream = new FileInputStream(file)) {
byte[] buffer = new byte[inputStream.available()];
while (inputStream.available() > 0) {
int bytesRead = inputStream.read(buffer);
outputStream.write(buffer, 0, bytesRead);
}
}
}
outputStream.close();
}
}
}