正在读取gzip内容信息



在c#中解压缩gz文件已经在互联网上得到了询问和回答,但这并不是我想要的。我需要一个能给我的图书馆:

1) gz文件中的文件名。2) 它的时间被修改了,因为它最初是从哪里来的。

每个gz解压缩的例子都会创建一个文件名,这个文件名是gz自己的文件名减去".gz"扩展名,但这不是我想要的。我想要gz文件中的文件名,我也想要它的修改日期。然后当我解压缩文件时,我给它指定修改日期,或者库帮我做。

但我看到的几乎所有例子都是,创建一个新文件,写入解压缩的字节,然后关闭它,当然,它不会有属于它的原始修改日期,因为它刚刚被创建和写入。

有人能帮忙吗。我用过dotnetzip和sharpziplib,他们的例子也有同样的问题,他们的论坛没有答案。

zlib提供了inflateGetHeader()函数,该函数用gzip标头中的所有信息填充结构。

您也可以自己解码标题,其中的格式相对简单。gzip报头和尾部格式在RFC1952中有记载。

最新更新