我有此ruby方法来压缩字符串-
def compress_data(data)
output = StringIO.new
gz = Zlib::GzipWriter.new(output)
gz.write(data)
gz.close
compressed_data = output.string
compressed_data
end
当我使用相同的输入调用此方法时,在不同的时间获得不同的输出。我试图获取压缩输出的字节数组并进行比较。
当我运行以下命令时,输出为Different
-
input = "hello world"
output1 = (compress_data input).bytes.to_a
sleep 1
output2 = (compress_data input).bytes.to_a
if output1 == output2
puts 'Same'
else
puts 'Different'
end
当我删除睡眠时,输出为Same
。压缩算法与当前时间有关吗?