как обычно
package com.javarush.task.task18.task1825;
import javax.swing.text.AttributeSet;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.util.*;
/*
Собираем файл
*/
public class Solution {
public static String getPathToFolder(String s) {
char[] charlist = s.toCharArray();
ArrayList<Character> charListo = new ArrayList<>();
for (Character c : charlist) {
charListo.add(c);
}
Collections.reverse(charListo);
while (true) {
if (!(charListo.get(0) == 47 || charListo.get(0) == 92)) {
charListo.remove(0);
} else {
break;
}
}
Collections.reverse(charListo);
String result = "";
for (Character c : charListo) {
result += c;
}
return result;
}
public static int getPartNumber(String s) {
char[] charlist = s.toCharArray();
ArrayList<Character> charListo = new ArrayList<>();
String tmp = "";
for (Character c : charlist) {
charListo.add(c);
}
Collections.reverse(charListo);
for (Character c : charListo) {
if (!(c == 116)) {
tmp += c;
} else {
break;
}
}
String result = "";
for (int i = tmp.length() - 1; i >= 0; i--)
{
result += tmp.charAt(i);;
}
return Integer.parseInt(result);
}
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
BufferedReader bufferedReader1;
ArrayList<String> fileNamesList = new ArrayList<>();
while (true) {
String tmp = bufferedReader.readLine();
if (tmp.equals("end")) {
break;
} else {
fileNamesList.add(tmp);
}
}
ArrayList<String> fileNamesListSORTED = new ArrayList<>();
for (String s : fileNamesList) {
if (fileNamesListSORTED.isEmpty()) {
fileNamesListSORTED.add(s);
} else {
if (getPartNumber(s) < getPartNumber(fileNamesListSORTED.get(0))) {
fileNamesListSORTED.add(0, s);
}
}
}
FileOutputStream fileOutputStream = new FileOutputStream(getPathToFolder(fileNamesListSORTED.get(0)) + "newjopafile.txt");
for (String s : fileNamesListSORTED) {
bufferedReader1 = new BufferedReader(new FileReader(s));
while (bufferedReader1.ready()) {
String tmp = bufferedReader1.readLine();
byte[] bytes = tmp.getBytes(StandardCharsets.UTF_8);
fileOutputStream.write(bytes);
}
bufferedReader1.close();
}
fileOutputStream.close();
bufferedReader.close();
}
}