TAR é um formato de arquivamento popular baseado em UNIX que é usado para empacotar vários arquivos, incluindo áudios, vídeos, instaladores, etc. Por outro lado, GNU é um algoritmo de compactação de dados para compactar arquivos grandes antes de compartilhar. O TAR.GZ é a combinação do arquivamento do TAR e da compressão do GNU. Da mesma forma, XZ Utils também oferece compactação de arquivos TAR no formato TAR.XZ. Neste artigo, você aprenderá como compactar arquivos TAR e criar arquivos TAR.GZ e TAR.XZ em C#.
API C# .NET para criar TAR.GZ e TAR.XZ
Aspose.ZIP for .NET é uma API poderosa que permite que você crie arquivos perfeitamente dentro de seus aplicativos .NET. Além disso, permite descompactar e extrair os arquivos de formatos populares, incluindo ZIP, TAR, GZIP, BZ2, 7Zip e RAR. Usaremos esta API para criar arquivos TAR compactados (.tar.gz e .tar.xz). Você pode baixar a DLL da API ou instalá-la diretamente usando NuGet.
PM> Install-Package Aspose.Zip
Crie um arquivo TAR.GZ em C#
A seguir estão as etapas para criar um arquivo TAR compactado (tar.gz) em C#.
- Crie um objeto da classe TarArchive.
- Adicione arquivos para arquivar usando o método TarArchive.CreateEntry(string, string).
- Salve o arquivo como TAR.GZ usando o método TarArchive.SaveGzipped(string).
O exemplo de código a seguir mostra como criar um arquivo TAR.GZ em C#.
// Criar arquivo TAR
using (var archive = new TarArchive())
{
// Adicione pastas ao arquivo
archive.CreateEntry("text.txt", @"D:\texts\article.txt");
archive.CreateEntry("picture.png", @"D:\Picture\photo.png");
// Compacte o TAR no arquivo tar.gz
archive.SaveGzipped("result.tar.gz");
}
Crie um arquivo TAR.XZ em C#
XZ Utils é um utilitário popular que fornece serviços de compactação e descompactação. Ele compacta os arquivos TAR no formato TAR.XZ. Aspose.ZIP para .NET também suporta compressão de arquivos TAR em TAR.XZ. A seguir estão as etapas para criar um arquivo .tar.xz em C#.
- Crie um novo objeto FileStream para o arquivo .tar.xz.
- Crie um objeto da classe TarArchive.
- Adicione arquivos para arquivar usando o método TarArchive.CreateEntry(string, string).
- Salve o arquivo como TAR.XZ usando o método TarArchive.SaveXzCompressed(Stream).
O exemplo de código a seguir mostra como compactar TAR no formato TAR.XZ em C#.
// Crie um arquivo tar.xz
using (FileStream xzFile = File.Open("archive.tar.xz", FileMode.Create))
{
// Criar arquivo TAR
using (var archive = new TarArchive())
{
// Adicione pastas ao arquivo
archive.CreateEntry("text.txt", @"D:\texts\article.txt");
archive.CreateEntry("picture.png", @"D:\Picture\photo.png");
// Compacte o TAR no arquivo tar.xz
archive.SaveXzCompressed(xzFile);
}
}
Obtenha uma licença de API gratuita
Você pode obter uma licença temporária gratuita para usar a API sem limitações de avaliação.
Conclusão
A compactação e descompactação de arquivos TAR são comumente realizadas em sistemas operacionais Unix/Linux. Neste artigo, você aprendeu como compactar arquivos TAR e criar arquivos TAR.GZ e TAR.XZ em C#. Você pode simplesmente instalar a API e integrar os exemplos de código fornecidos em seus aplicativos .NET para compactar arquivos TAR. Além disso, você pode visitar a documentação para explorar mais sobre o Aspose.ZIP para .NET. Além disso, você pode postar suas dúvidas em nosso fórum.