SharpZipLib:从.tar文件里面解压缩.gz?

时间:2011-04-18 00:38:19

标签: c# tar sharpziplib compression gz

我有一个包含多个压缩.gz文件的.tar文件。我没有问题通过.tar文件在目标目录中创建每个.gz文件。我想跳过将.gz写在一起并从TarEntry / TarArchive中解压缩它?并通过.Net原生GZipStream动态编写其内容。甚至不确定这是可能的。

这是我当前编写的每个g'zipped文件的代码。不知道要修改什么来获得我需要的地方。

        using (FileStream _fsIn = new FileStream(@"F:\data\abc.tar", FileMode.Open, FileAccess.Read))
        {
            using (TarInputStream _tarIn = new TarInputStream(_fsIn))
            {
                TarEntry _tarEntry;

                while ((_tarEntry = _tarIn.GetNextEntry()) != null)
                {
                    string _archiveName = _tarEntry.Name;

                    using (FileStream _outStr = new FileStream(@"F:\data\" + _archiveName, FileMode.Create))
                    {
                        _tarIn.CopyEntryContents(_outStr);
                    }
                }
            }
        }

1 个答案:

答案 0 :(得分:0)

我不确定你想做什么。也许你可以澄清你的目标。 sharpzlib没有像我预期的那样好记录。

我已经遍历了tar存档并将文件内容推送到新的Stream中,也许您可​​以将其作为起点。看看this StackOverflow Article