package com.javarush.test.level21.lesson10.task01;
import java.io.BufferedWriter;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
/* Рефакторинг
Отрефакторите метод writeZipEntriesToFile в соответствии с java7 try-with-resources.
Допускаются только текстовые коментарии.
*/
public class Solution {
public static void writeZipEntriesToFile(String zipFileName, String outputFileName) {
Charset charset = StandardCharsets.UTF_8;
Path outputFilePath = Paths.get(outputFileName);
try (ZipFile zip = new ZipFile(zipFileName);
BufferedWriter writer = Files.newBufferedWriter(outputFilePath, charset)){
String newLine = System.getProperty("line.separator");
for (Enumeration entries = zip.entries(); entries.hasMoreElements(); ) {
// Берем имя файла из архива и записываем его в результирующий файл
// Get the entry name and write it to the output file
String zipEntryName = ((ZipEntry) entries.nextElement()).getName() + newLine;
writer.write(zipEntryName, 0, zipEntryName.length());
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
Leave A Comment