ZIP é um formato de arquivamento popular usado para compactar arquivos e pastas. O ZIP facilita o compartilhamento de vários arquivos, reduzindo seu tamanho e mantendo-os em um único arquivo. Por outro lado, TAR é um famoso formato de arquivamento baseado em Unix que é usado para empacotar os arquivos antes de compartilhá-los. Em vários casos, você precisa converter os arquivos ZIP para o formato TAR. Para conseguir isso programaticamente, este artigo mostra como converter um arquivo ZIP em TAR em C#.
API C# .NET para converter ZIP em TAR
Para converter arquivos ZIP para o formato TAR, usaremos Aspose.ZIP for .NET. A API fornece uma ampla gama de recursos para criar e manipular ZIP, TAR e outros formatos de arquivamento populares. Você pode baixar a DLL da API ou instalá-la de NuGet.
PM> Install-Package Aspose.Zip
Converter um arquivo ZIP para TAR em C#
A conversão de ZIP para TAR é bastante fácil usando Aspose.ZIP para .NET. Simplesmente, carregue o arquivo ZIP, transfira suas entradas para um arquivo TAR e salve o arquivo TAR no local desejado. A seguir estão as etapas para converter um arquivo ZIP em TAR em C#.
- Carregue o arquivo ZIP usando a classe Arquivo.
- Crie um objeto da classe TarArchive para o arquivo TAR.
- Acesse cada ArchiveEntry no ZIP usando a coleção Archive.Entries.
- Para cada entrada no arquivo ZIP, execute as seguintes etapas:
- Copie a entrada para um objeto MemoryStream usando o método ArchiveEntry.Open().CopyTo(MemoryStream).
- Transfira a entrada para o arquivo TAR usando o método TarArchive.CreateEntry(String, MemoryStream).
- Finalmente, salve o arquivo TAR no local desejado usando o método TarArchive.Save(String).
O exemplo de código a seguir mostra como converter um arquivo ZIP para o formato TAR em aplicativos .NET.
// Carregar arquivo ZIP
using (Archive source = new Archive("source.zip"))
{
// Crie um objeto TarArchive para o arquivo TAR
using (TarArchive tar = new TarArchive())
{
// Percorrer as entradas
foreach (ArchiveEntry entry in source.Entries)
{
if (!entry.IsDirectory)
{
// Copiar entrada para TAR
MemoryStream mem = new MemoryStream();
entry.Open().CopyTo(mem);
tar.CreateEntry(entry.Name, mem);
}
}
// Salvar arquivo TAR
tar.Save("result.tar");
}
}
Obtenha uma licença de API gratuita
Você pode obter uma licença temporária gratuita para usar o Aspose.ZIP para .NET sem limitações de avaliação.
Conclusão
A conversão de arquivos ZIP para o formato TAR geralmente é necessária antes de compartilhar os arquivos pela Internet. Portanto, neste artigo, você aprendeu como converter um arquivo ZIP em TAR programaticamente em C#. Você pode simplesmente instalar o Aspose.ZIP para .NET e incorporar o código fornecido para realizar a conversão de ZIP para TAR de dentro de seus aplicativos .NET. Além disso, você pode visitar documentação para explorar mais sobre o Aspose.ZIP para .NET. Além disso, você pode compartilhar suas dúvidas conosco através do nosso fórum.