通常,在使用extractAll解压缩文件后,可以使用校验方法来验证解压缩后的文件是否正确。以下是一种简单的校验方法:
import hashlib import os def calculate_hash(file_path): with open(file_path, 'rb') as f: hash_md5 = hashlib.md5() for chunk in iter(lambda: f.read(4096), b''): hash_md5.update(chunk) return hash_md5.hexdigest() def verify_extracted_files(dir_path, checksum): for root, dirs, files in os.walk(dir_path): for file_name in files: file_path = os.path.join(root, file_name) file_hash = calculate_hash(file_path) if file_hash == checksum: print(f"{file_path} verified successfully") else: print(f"{file_path} failed verification") # Example usage extracted_dir = "/path/to/extracted/files" checksum = "af2cdd6c3e0e89e4be4dd9f4f74b4fab" # MD5 checksum of the original file verify_extracted_files(extracted_dir, checksum)
在上面的例子中,calculate_hash函数用于计算文件的MD5哈希值,然后verify_extracted_files函数遍历解压缩后的文件夹中的所有文件,并与指定的checksum进行比较,以验证文件是否正确解压缩。如果文件的哈希值与checksum相同,则表示文件校验通过,否则表示文件校验失败。