Почему в 28 строке никогда не выполняется условие??
package com.javarush.task.task31.task3106;
import java.io.*;
import java.nio.Buffer;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.StandardCopyOption;
import java.util.*;
import java.util.stream.Collectors;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.zip.ZipInputStream;
/*
Разархивируем файл
*/
public class Solution {
public static void main(String[] args) throws IOException {
Path result = Paths.get(args[0]); // Путь к файлу с результатом
List<FileInputStream> parts = initialize(args);
try(BufferedOutputStream outStream = new BufferedOutputStream(new FileOutputStream(result.toString(),true));
ZipInputStream inputStream = new ZipInputStream(new SequenceInputStream(Collections.enumeration(parts)))) {
ZipEntry entry;
while ((entry = inputStream.getNextEntry()) != null) {
if(!entry.isDirectory()) {
byte[] buffer = new byte[1024 * 10];
while(inputStream.available() > 0) {
int readBytes = inputStream.read(buffer);
outStream.write(buffer,0,readBytes);
}
}
}
inputStream.closeEntry();
}
}
private static List<FileInputStream> initialize(String[] args) {
List<String> parts = new ArrayList<>(Arrays.asList(args));
parts.remove(0); // Удаляю путь к результирующему файлу из списка
parts.sort(String::compareTo);
List<FileInputStream> list = new ArrayList<>();
try {
for (String str : parts)
list.add(new FileInputStream(str));
} catch (FileNotFoundException exception) {
exception.printStackTrace();
}
return list;
}
}