Crea un file ZIP con C#
Compressione efficiente in .NET - riduci le dimensioni, impacchetta i dati e automatizza l’archiviazione.
Come creare una cartella ZIP compressa
Comprimere il contenuto di un file o di una cartella in un archivio ZIP è una pratica comune per risparmiare spazio, semplificare lo scambio di dati e standardizzare i backup. Con Aspose.Zip per .NET puoi creare e popolare archivi direttamente in C# (file singoli, cartelle complete o batch), controllare il livello di compressione e abilitare protezione con password o cifratura AES. L’API si integra bene in servizi server-side, tool interni, pipeline CI/CD e applicazioni desktop.
Crea un archivio ZIP di immagini con C#
Per archiviare immagini (BMP, JPG, GIF, TIFF e altro), il flusso è semplice - crea un
oggetto FileStream
per l’output, apri le immagini sorgenti e usa la classe
Archive
. Aggiungi ogni file con il
metodo CreateEntry
e completa con il
metodo Save
.
Esempio di codice C# per creare un archivio ZIP contenente immagini.
// For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
using (FileStream zipFile = File.Open(dataDir + "CompressSingleFile_out.zip", FileMode.Create))
{
//File to be added to archive
using (FileStream source1 = File.Open(dataDir + "picture123.png", FileMode.Open, FileAccess.Read))
{
using (var archive = new Archive(new ArchiveEntrySettings()))
{
archive.CreateEntry("picture123.png", source1);
archive.Save(zipFile);
}
}
}
Converti un PDF in ZIP con C#
Il principio è lo stesso per un PDF - istanzia Archive, aggiungi il file con CreateEntry e poi chiama Save per scrivere lo ZIP. Puoi anche aggiungere più documenti, memorizzare senza compressione, mantenere la struttura di cartelle e adattare le opzioni al tuo scenario.
Esempio C# per creare un archivio ZIP da file PDF.
var dir = "full directory path";
using (var arch = new Archive())
{
arch.CreateEntry("filename.pdf", dir+"file.pdf");
arch.Save(dir+"pdf-files-archived_result.zip");
}
ZIP di più file con password
Aspose.Zip supporta l’archiviazione di più file e cartelle con diversi metodi di cifratura, inclusi cifratura tradizionale e AES (AES128, AES192, AES256). Il flusso resta lo stesso - aggiungi entry e salva - configurando la cifratura in base alle tue esigenze.
Esempio C# per archiviare più file con cifratura.
using (FileStream zipFile = File.Open(dataDir + "CompressWithTraditionalEncryption_out.zip", FileMode.Create))
{
using (FileStream file1 = File.Open(dataDir + "alice29.txt", FileMode.Open, FileAccess.Read))
{
using (FileStream file2 = File.Open(dataDir + "asyoulike.txt", FileMode.Open, FileAccess.Read))
{
using (var archive = new Archive(new ArchiveEntrySettings(null, new TraditionalEncryptionSettings("p@s$"))))
{
archive.CreateEntry("alice29.txt", file1);
archive.CreateEntry("asyoulik3.txt", file2);
archive.Save(zipFile);
}
}
}
}
Documentazione - funzionalità di compressione in Aspose.ZIP per .NET
Aspose.Zip per .NET è progettato per gestire la compressione degli archivi in modo affidabile con un’API chiara e buone prestazioni. Puoi manipolare archivi, convertire tra formati e controllare struttura delle entry, stream I/O e opzioni di sicurezza. Il namespace ZIP include le classi principali per lavorare con archivi ZIP e entità correlate.
Altri formati supportati per la compressione
Puoi anche comprimere file PNG, PPT, MPX, MP3, GPX, HTML, DOCX, JPEG, XML e molti altri formati in un archivio ZIP.