Как распаковать zip-файл, существующий на локальном компьютере, в раздел на сервере? - PullRequest
0 голосов
/ 16 января 2012

У меня есть zip-файл на локальном компьютере в каталоге C: \ tem \ test.Я хочу извлечь его на сервере в новом каталоге, который должен иметь то же имя, что и zip-файл.Как я могу это сделать?

class UnZipFile {
final static File source = new File("C:\\tmp\\test\\R1112B2_BcfiHtm.zip");

public static void getZipFiles() {
    try {
        String destination ="U:\\root\\intranet\\res\\fi\\test";
        byte[] buf = new byte[1024];
        ZipInputStream zipinputstream = null;
        ZipEntry zipentry;
        zipinputstream = new ZipInputStream(
                new FileInputStream(source));

        zipentry = zipinputstream.getNextEntry();
        while (zipentry != null) {
            //for each entry to be extracted
            String entryName = zipentry.getName();
            System.out.println("entryname " + entryName);
            int n;
            FileOutputStream fileoutputstream;
            File newFile = new File(entryName);
            String directory = newFile.getParent();

            if (directory == null) {
                if (newFile.isDirectory())
                    break;
            }

            fileoutputstream = new FileOutputStream(
                    destination + entryName);

            while ((n = zipinputstream.read(buf, 0, 1024)) > -1)
                fileoutputstream.write(buf, 0, n);

            fileoutputstream.close();
            zipinputstream.closeEntry();
            zipentry = zipinputstream.getNextEntry();

        }//while

        zipinputstream.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

}

Я получаю следующее исключение: java.io.FileNotFoundException: C: \ tmp \ test \ Attestn \ 1000100_FormDem_NS_NL.pdf (система не может найти указанный путь)

...