在Java中,是否可以为.zip
文件生成MD5哈希值?我发现的所有示例都是针对.txt
文件的。
我想知道当我们解压数据,编辑一个文件,再次压缩并查找哈希值时,它是否与原始哈希值不同?
InputStream theFile = new FileInputStream("example.zip");
ZipInputStream stream = new ZipInputStream(theFile);
try
{
ZipEntry entry;
while((entry = stream.getNextEntry()) != null)
{
MessageDigest md = MessageDigest.getInstance("MD5");
DigestInputStream dis = new DigestInputStream(stream, md);
byte[] buffer = new byte[1024];
int read = dis.read(buffer);
while (read > -1) {
read = dis.read(buffer);
}
System.out.println(entry.getName() + ": "
+ Arrays.toString(dis.getMessageDigest().digest()));
}
} finally { stream.close(); }