Problema com ZipOutputStream

0 respostas
N

Bom dia, senhores,

estou tentando compactar um arquivo xml bem grande (cerca de 65MB), o trecho a seguir faz isso:

private int TAMANHO_BUFFER = 2048;
    private byte[] dados = new byte[TAMANHO_BUFFER];

...

BufferedInputStream origem = null;
                    FileOutputStream destino = new FileOutputStream(new File(this.pathArquivoZip));
                    ZipOutputStream zipOutputStream = new ZipOutputStream(new BufferedOutputStream(destino));

                    FileInputStream fileInputStream = new FileInputStream(this.pathArquivoXml);
                    origem = new BufferedInputStream(fileInputStream, this.TAMANHO_BUFFER);
                    ZipEntry entrada = new ZipEntry(this.pathArquivoXml);
                    zipOutputStream.putNextEntry(entrada);
                    int contador;
                    while ((contador = origem.read(this.dados, 0, this.TAMANHO_BUFFER)) != -1) {
                        zipOutputStream.write(this.dados, 0, contador);
                    }
                    origem.close();
                    zipOutputStream.close();

O código executa sem exceções, o arquivo ZIP é gerado, porém fica vazio (como se nenhum arquivo tivesse sido zipado). O que estou fazendo de errado? Já tentei aumentar o buffer, mas nada funciona.

Obrigado pela atenção!

Criado 9 de agosto de 2006
Respostas 0
Participantes 1