我刚刚使用java.util.zip创建了一个Zip文件。现在我想检查创建的ZIP是否正确,ZIP文件的未压缩大小是否等于我压缩的实际文件夹。
我知道ZipFile.isValid()方法,如果ZIP中的所有标题都正确,则返回true。虽然不解决我的问题。
谢谢:)
答案 0 :(得分:0)
解压缩* .zip文件,遍历每个ZipEntry元素,对每个ZipEntry.getSize()求和。将其与您压缩的文件大小的总和进行比较。或者(如果由于某种原因你不信任ZipEntry头文件)解压缩每个ZipEntry,计算字节数,但丢弃它们。你可能会做其中任何一件事,比如快速检查一下你的邮政编码,甚至是单元测试。
你可以迭代遍历ZipEntry:
zipInStream = new ZipInputStream(new FileInputStream(zipFile));
ZipEntry zipEntry;
while ((zipEntry = zipInStream.getNextJarEntry()) != null) {
String entryName = zipEntry.getName();
....
}
答案 1 :(得分:0)
检查是否正确创建了ZIP文件
if (myZipFile.isValid())
{
// The file has been created successfully
}
了解目录和文件的长度。
File dir = new File("path/to/the/directory/");
int size = dir.length();
File zip = new File("path/to/zipfile.zip");
int zipSize = zip.length();
现在你可以比较它们了。