簡體   English   中英

Java未寫入zip文件

[英]Java not writing to zip file

我嘗試使用以下java方法來創建一個zip文件,該文件中已寫入一個現有文件(該zip文件具有相同的名稱,只是將.log擴展名替換為.zip)。 zip文件已成功創建,但是完成后不在其中。

這是我的代碼:

private static void zipFile(File fileToZip) {

    final int bufferSize = 2048;
    File zipFile = new File(fileToZip.getAbsolutePath().replaceAll(".log", ".zip"));

    try (FileOutputStream fos = new FileOutputStream(zipFile.getAbsolutePath());
            FileInputStream fis = new FileInputStream(fileToZip);
            ZipOutputStream zos = new ZipOutputStream(new BufferedOutputStream(fos));
            BufferedInputStream origin = new BufferedInputStream(fis, bufferSize)) {

        ZipEntry ze = new ZipEntry(fileToZip.getAbsolutePath());
        zos.putNextEntry(ze);
        byte[] data = new byte[bufferSize];
        int count;
        while ((count = origin.read(data, 0, bufferSize)) != -1) {
            LOGGER.info("WRITING!!!");
            zos.write(data, 0, count);
        }
        zos.closeEntry();

    } catch (IOException e) {
        LOGGER.error("Error: ", e);
    }

}

有任何想法嗎? :)

更改

ZipEntry ze = new ZipEntry(fileToZip.getAbsolutePath());

ZipEntry ze = new ZipEntry(fileToZip.getName());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM