2
我创建两个gzip文件,其中一个仅包含一个gzip成员,第二个包含2个gzip成员(两个文件连接成一个单个gzip文件)。如果gzip文件是通过组合多个gzip文件创建的,Chrome不会解压缩gzip文件
当我尝试通过网络服务器下载时,chrome将第一个文件解压缩并显示内容。
但是,当下载第二个文件时,chrome似乎只解压缩第一个成员,第二个成员保持未压缩状态。
我试着用7zip打开第二个文件并验证内容是否正常。
下面是代码我使用生成的C#
FileStream fileStream = new FileStream("D:\\single_big_gzip.gz", FileMode.Create);
FileStream fileStream2 = new FileStream("D:\\multiple_gzip_files.gz", FileMode.Create);
// Write to First file
GZipStream gzipStream = new GZipStream(fileStream, CompressionMode.Compress, false);
StreamWriter writer = new StreamWriter(gzipStream);
writer.WriteLine("hello world!");
writer.Flush();
gzipStream.Close();
fileStream.Close();
// write to second file
gzipStream = new GZipStream(fileStream2, CompressionMode.Compress, true);
writer = new StreamWriter(gzipStream);
writer.WriteLine("Hello world!");
writer.Flush();
gzipStream.Close();
gzipStream = new GZipStream(fileStream2, CompressionMode.Compress, true);
writer = new StreamWriter(gzipStream);
writer.WriteLine("Bye Bye Birdie!");
writer.Flush();
gzipStream.Close();
fileStream2.Close();
任何想法,我怎么能得到铬解压整个第二个文件中的两个文件?
谢谢。
gzip文件并不是真的要包含多个文件,你确定你不想生成一个zip文件吗? – 2015-04-02 20:18:34
我有一个大规模的gzip文件和一个小的gzip文件。我想在将它们作为单个文件(连接)提供给用户之前将它们合并在一起。我不想解压缩并将它们添加到一起以生成新文件。 – 2015-04-02 20:25:28
我知道你做到了,但通常没有完成,因为没有多少程序会找出那部分,他们通常会在解压完第一个文件后停止。改变Chrome会很困难,改变自己的程序会更容易,所以这是我的建议。 – 2015-04-02 20:28:10