我正在尝试使用以下 Ruby 代码对文件进行解压缩。
但是我遇到了以下错误 -
我需要在使用Zlib创建压缩文件时放置任何标题数据吗?因为当我使用inflate方法而不是GzipReader时,会出现以下错误 -
File.open("file_compressed.gz") do |compressed|
File.open("file_decomp","w") do |decompressed|
gz = Zlib::GzipReader.new(compressed)
result = gz.read
decompressed.write(result)
gz.close
end
end
但是我遇到了以下错误 -
not in gzip format (Zlib::GzipFile::Error)
./features/support/abc/abc_file.rb:44:in `initialize'
在Mac上使用gzip命令解压相同的文件时,我可以获得正确的未压缩输出。对于以下命令,我可以看到 -
$file file_compressed.gz
file_compressed.gz: gzip compressed data, from FAT filesystem (MS-DOS, OS/2, NT)
我需要在使用Zlib创建压缩文件时放置任何标题数据吗?因为当我使用inflate方法而不是GzipReader时,会出现以下错误 -
incorrect header check (Zlib::DataError)
./features/support/abc/abc_file.rb:69:in `inflate'