У меня есть метод, который архивирует 5 файлов. Он создает zip-файл без ошибок, но я не могу открыть его, чтобы проверить его содержимое. Я попытался отправить его по электронной почте, и gmail сказал, что не может отправлять поврежденные файлы. Попытка открыть с помощью WinRAR в Windows приводит к ошибке, в которой говорится:
Архив находится в неизвестном формате или поврежден
Это метод:
private void zipTestFiles() throws FileNotFoundException, IOException
{
File[] filenames = fileDir.listFiles(fileNameFilter(Constants.PAGE_MON_FILENAME_FILTER));
byte[] buf = new byte[1024];
String outFilename = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separatorChar + Constants.PAGEMONITOR_ZIP;
DeflaterOutputStream out = new DeflaterOutputStream(new BufferedOutputStream(new FileOutputStream(outFilename)));
for (int i=0; i<filenames.length; i++)
{
FileInputStream in = new FileInputStream(filenames[i]);
int len;
while ((len = in.read(buf)) > 0)
{
out.write(buf, 0, len);
}
in.close();
}
out.close();
}