首页 > 解决方案 > 使用 dotnet core 解压缩 .taz 文件

问题描述

我正在处理一个需要处理一些 .taz 压缩文件的项目。有没有办法在 C# dotnet core 中解压缩和提取这些文件?

谢谢 !

标签: c#.net-corecompression

解决方案


tar.Z是一个归档文件,可以在 UNIXcompress实用程序的帮助下创建。它的文件被压缩成一个 tarball ( .tar ),然后使用现在相当陈旧的 80 年代压缩算法LZW进一步压缩。

您可以借助流行的SharpZipLib库来提取这些包。

这是一个如何打开 TAZ 文件然后将其包含的 TAR 文件写入磁盘的示例。当然,如果文件的大小可行以完整保存在内存中,您当然可以立即将 TAR 文件提取到内存中。

using (var inputStream = File.Open(PATH_TO_TARZ_FILE, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
        using (var tazStream = new LzwInputStream(inputStream))
        {
               using (var outputStream = PATH_TO_OUTPUT_TAR_FILE, 4096))
               {
                     tazStream.CopyTo(outputStream);
               }
        }
}

推荐阅读