Come convertire CAB in 7ZIP usando C#
Per prima cosa, procurati e referenzia la libreria Aspose.Zip nel tuo progetto C#. In genere puoi scaricarla dal sito Aspose oppure usare un pacchetto NuGet, se disponibile. Nel Gestore pacchetti, cerca Aspose.ZIP e installalo. Puoi anche usare il seguente comando dalla Console di Gestione pacchetti.
Gestisci i pacchetti NuGet con il Gestore pacchetti di Visual Studio
Comando della Console del Gestore pacchetti:
PM> Install-Package Aspose.Zip
Passaggi per convertire CAB in 7ZIP tramite C#
Convertation from CAB to 7ZIP consist of following steps:
- Extract archive to intermediate storage
- Compress extracted data to desired format
Requisiti di sistema
Before running the conversion example code, make sure that you have the following prerequisites.
- Microsoft Windows or a compatible OS with .NET Framework, Mono and COM Interop.
- Development environment like Microsoft Visual Studio.
- Aspose.Tasks for .NET DLL referenced in your project.
Esempio di codice per convertire da CAB a 7ZIP
Codice da CAB a vari formati: un archivio CAB contiene in genere più record o file. Per convertire questo archivio in formati come GZ (Gzip), LZ (Lzip), Z (Unix Compress), XZ (XZ Utils) e BZ2 (Bzip2), un approccio comune consiste prima nell’impacchettare i contenuti in un formato TAR (Tape Archive). Questo processo è analogo alla prassi tipica negli ambienti Linux.
In questa procedura, ogni file o record nell’archivio CAB viene inizialmente raggruppato in un unico archivio TAR. L’archivio TAR funge da contenitore per i singoli file, preservandone la struttura e i metadati originali. Una volta incapsulati i dati nell’archivio TAR, diventa più semplice applicare diversi algoritmi e formati di compressione.
La scelta di TAR come formato intermedio è dovuta alla sua semplicità e all’ampia compatibilità con i sistemi operativi di tipo Unix. Offre un modo semplice per raggruppare i file senza applicare direttamente la compressione. Dopo il confezionamento TAR, è possibile applicare operazioni di compressione successive all’archivio TAR per ottenere i formati di output desiderati, come GZ, LZ, Z, XZ o BZ2.
Conversione da CAB a 7ZIP - C#:
using (SevenZipArchive sevenZipArchive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(1048576))))
{
using (CabArchive cabArchive = new CabArchive("archive.cab"))
{
for (int i = 0; i < cabArchive.Entries.Count; i++)
{
var ms = new MemoryStream();
cabArchive.Entries[i].Extract(ms);
ms.Seek(0, SeekOrigin.Begin);
sevenZipArchive.CreateEntry(cabArchive.Entries[i].Name.Replace('\\', '/'), ms);
}
}
sevenZipArchive.Save("output.7z");
}
App gratuita per convertire ZIP in 7ZIP
Consulta le nostre demo live per la conversione da CAB a 7ZIP con i seguenti vantaggi
Una libreria Aspose.ZIP affidabile che può comprimere, estrarre, crittografare, decrittografare, convertire e unire archivi. L’API Aspose.ZIP for .NET consente di manipolare vari tipi di archivi senza affrontare la complessità dei formati di compressione sottostanti, con il minimo sforzo di codifica.