如何快速检测字符串是否为zlib压缩?
在Python中,最快的方法来判断一个字符串是否被zlib压缩过。我现在使用的是这个方法。
def iscompressed(data):
result = True
try:
s =zlib.decompress(data)
except:
result = False
return result
我相信还有更优雅的方式。
2 个回答
3
虽然要百分之百确定的方法就是实际尝试解压缩,但你可以通过查看zlib压缩方法和标志位的头部信息来做一个合理的猜测:
11
你可以查看前两个字节来获取头部信息,不过这样做并不是百分之百可靠。
可以参考一下http://www.faqs.org/rfcs/rfc1950.html,第二章第2.2节。