using IronXL;
using System;
using System.Linq;
// Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select a cell and return the converted value
int cellValue = workSheet["A2"].IntValue;
// Read from ranges of cells elegantly.
foreach (var cell in workSheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Calculate aggregate values such as Min, Max and Sum
decimal sum = workSheet["A2:A10"].Sum();
// Linq compatible
decimal max = workSheet["A2:A10"].Max(c => c.DecimalValue);
Wann immer Sie daran denken, eine Datei in einem komprimierten Format zu senden, kommt Ihnen in der Regel zuerst ein Zip-Archiv in den Sinn. Ein Zip-Archiv ist ein beliebtes Format, um eine einzelne Datei oder eine gesamte Sammlung in einem einzigen Archiv zu komprimieren und zu packen. Wenn jedoch große Mengen von Dateien gezippt werden müssen, kann die Arbeit mit ihnen frustrierend werden, da Sie jede Datei einzeln archivieren und formatieren müssten. Aber das muss nicht so sein. Automatisierung großer Aufgaben mit hohem Wert muss programmatisch erfolgen. Wir können IronZIP, eine einfache und dennoch intuitive Bibliothek, nutzen, um all das und mehr zu erreichen.
In diesem Artikel werden wir die Kernfunktionen und -merkmale von IronZIP besprechen und erläutern, wie es Ihnen dabei helfen kann, Ihren Arbeitsablauf besser zu automatisieren, die Effizienz zu steigern und fehleranfällige manuelle Aufgaben zu eliminieren.
Erstellen einer neuen ZIP-Datei aus einem Ordner oder Dateien
Nachfolgend ein Beispiel, das fünf Dateien aufnimmt, sie zu einem Archiv komprimiert und nach dem Vorgang exportiert. Alle Beispiele in diesem Artikel sind in die statische void main eingebettet, um wiederholten Code zu vermeiden.
using IronZip;
// Create an empty ZIP
using (var archive = new IronZipArchive())
{
// Add files to the ZIP
archive.Add("./assets/image1.jpg");
archive.Add("./assets/image2.jpg");
archive.Add("./assets/image3.jpg");
// Export the ZIP
archive.SaveAs("output.zip");
}
using IronZip;
// Create an empty ZIP
using (var archive = new IronZipArchive())
{
// Add files to the ZIP
archive.Add("./assets/image1.jpg");
archive.Add("./assets/image2.jpg");
archive.Add("./assets/image3.jpg");
// Export the ZIP
archive.SaveAs("output.zip");
}
Imports IronZip
' Create an empty ZIP
Using archive = New IronZipArchive()
' Add files to the ZIP
archive.Add("./assets/image1.jpg")
archive.Add("./assets/image2.jpg")
archive.Add("./assets/image3.jpg")
' Export the ZIP
archive.SaveAs("output.zip")
End Using
$vbLabelText $csharpLabel
Zuerst importieren wir IronZip.
Dann erstellen wir mit IronZIP ein Archiv.
Wir rufen dann archive.add auf()und fügen Sie mehrere Dateien zum Archiv hinzu. Denken Sie daran, dass die Pfadnamen absolute Pfade sein müssen, da der Vorgang sonst die entsprechenden Dateien nicht finden kann.
Schließlich rufen wir `archive.SaveAs()und die ZIP-Archivdatei als `output.zip` exportieren.
Aktualisieren einer bestehenden ZIP-Datei mit neuen Dateien oder Änderungen
Lassen Sie uns ein weiteres Beispiel durchgehen; Diesmal werden wir das bestehende ZIP-Archiv mit neuen Dateien bearbeiten, um die Funktionalität von IronZIP zu demonstrieren.
using IronZip;
// Open an existing ZIP
using (var archive = IronZipArchive.FromFile("existing.zip"))
{
// Add files
archive.Add("./assets/image3.png");
archive.Add("./assets/image4.png");
// Export the ZIP
archive.SaveAs("result.zip");
}
using IronZip;
// Open an existing ZIP
using (var archive = IronZipArchive.FromFile("existing.zip"))
{
// Add files
archive.Add("./assets/image3.png");
archive.Add("./assets/image4.png");
// Export the ZIP
archive.SaveAs("result.zip");
}
Imports IronZip
' Open an existing ZIP
Using archive = IronZipArchive.FromFile("existing.zip")
' Add files
archive.Add("./assets/image3.png")
archive.Add("./assets/image4.png")
' Export the ZIP
archive.SaveAs("result.zip")
End Using
$vbLabelText $csharpLabel
Zuerst importieren wir IronZip.
Dann erstellen wir mit IronZIP ein Archiv, aber dieses Mal importieren wir die vorhandene Zip-Datei mit IronZipArchive.FromFile.()`.
Wir rufen dann archive.add auf()` und fügen Sie die gewünschten Dateien dem Archiv hinzu. Denken Sie daran, dass die Pfadnamen absolute Pfade sein müssen, da der Vorgang sonst die vorhandene Datei nicht finden kann. Alternativ können Sie diesen Schritt mit einem variablen Zeichenfolgen-Dateinamen für eine einzelne Datei trennen, um die Lesbarkeit zu erleichtern.
Schließlich rufen wir `archive.SaveAs()und exportieren Sie das Zip-Archiv als result.zip.
Wie Sie aus dem obigen Code sehen können, sind die Operation und das Format denen ähnlich, die verwendet werden, um Dateien zu erstellen und zu einem Zip-Datei hinzuzufügen. Der Hauptunterschied besteht darin, dass wir stattdessen die Zip-Datei importieren, was die einfache, aber intuitive Funktionalität von IronZIP demonstriert.
Dateien aus einem Zip-Archiv extrahieren
Wir können auch IronZIP verwenden, um Dateien aus einem Zip-Archiv oder Zip-Paket zu extrahieren, wie in den obigen Beispielen. Lassen Sie uns dies in einem anderen Beispiel überprüfen.
using IronZip;
// Extract ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted");
using IronZip;
// Extract ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted");
Imports IronZip
' Extract ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted")
$vbLabelText $csharpLabel
Wir importieren IronZIP und rufen `IronZipArchive.ExtractArchiveToDirectory` auf; Die Methode tut genau das, was im Label angegeben ist, und extrahiert lediglich den Inhalt des bestehenden ZIP-Archivs in das angegebene Verzeichnis.
Darüber hinaus, in Fällen, in denen Sie mit passwortgeschützten Zip-Archiven zu tun haben, könnten wir auch eine andere Methode zum Extrahieren der Archive verwenden.
using IronZip;
using IronZip.Enum;
// Extract protected ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted", "P@ssw0rd");
using IronZip;
using IronZip.Enum;
// Extract protected ZIP
IronZipArchive.ExtractArchiveToDirectory("output.zip", "extracted", "P@ssw0rd");
Schließlich geben wir einen weiteren Parameter an: das Passwort für das geschützte ZIP-Archiv. Der Rest der Operation ist derselbe wie der obenstehende Code.
Fortgeschrittene Themen und bewährte Verfahren
Die obigen Codebeispiele zum Hinzufügen, Extrahieren und Erstellen sind die am häufigsten verwendeten, wenn es um den Umgang mit ZIP-Archiven geht. In anderen Fällen, in denen eine erweiterte Nutzung erforderlich ist, wie das Extrahieren anderer Formate oder einfach das Anzeigen des Archivkontexts, deckt IronZIP all dies und mehr ab.
Erweiterte Funktionen von IronZIP
Kreuzkompatibilität: IronZIP ist mit einer breiten Palette von .NET-Versionen kompatibel, einschließlich .NET Core(8.7, 6.5, and 3.1+), Standard (2.0+)und .NET-Framework(4.6.2+). Die Bibliothek funktioniert auch im Web(Blazor)mobil(MAUI)desktop(WPF), und Konsole. Dies ermöglicht es Entwicklern, die Einschränkungen von Plattformen und Versionen wirklich zu überwinden.
Archive erstellen: Die obigen Beispiele konzentrieren sich hauptsächlich auf das ZIP-Archivformat; Jedoch arbeitet IronZIP auch mit TAR, GZIP und BZIP2.
Archive entpacken: Archive extrahieren und Dateien mit IronZIP mit einem einzigen Codeblock dekomprimieren, wie oben gezeigt.
Dateien und Dateisysteme hinzufügen: IronZIP hilft Ihnen auch, das Zip-Archiv in vollem Umfang zu manipulieren, indem Sie Bilder, Textdateien, Dokumente wie PDFs, DOCX und XLSX sowie Audiodateien wie MP3 und WAV hinzufügen. Sie können sogar ein gesamtes komprimiertes Dateisystem oder eine komprimierte Textdatei hinzufügen, um ein ZipArchive-Archiv zu erstellen.
Exportieren und Erstellen: Zusätzlich zum Erstellen eines wesentlichen Zip-Archivs können Sie es mit traditionellen oder AES128- und AES256-Standards mit einem Passwort schützen. Sie können auch Formate wie TAR, GZIP und BZIP2 generieren und exportieren, die oben erwähnt werden.
Individuelle Kompressionsstufe: IronZIP verfügt über benutzerdefinierte Kompressionsdateien und ermöglicht es Entwicklern, die Einstellungen des Komprimierungsalgorithmus anzupassen, um ihn an ihre Bedürfnisse anzupassen.
Archive bearbeiten: Fügen Sie Dateieinträge hinzu, extrahieren Sie Archive und löschen Sie Dateieinträge ganz einfach mit IronZIP, einer All-in-One-Lösung für alle Bearbeitungsvorgänge mit Archiven.
Dateieintragseigenschaften: IronZIP ermöglicht es Ihnen, einen optionalen Archivkommentar zu setzen und Dateinamen der Dateien im Archiv abzurufen, ohne sie zu extrahieren, was hilft, spezifizierte Kommentare für jede Datei zu hinterlassen.
Lizenzierungsoptionen: IronZIP bietet anpassungsfähigeLizenzauswahleinschließlich kostenloser Testversionen, die es Entwicklern ermöglichen, das auszuwählen, was am besten zu ihren Anforderungen passt.
Fazit
Der Umgang mit komprimierten Dateien und Archiven ist eine tägliche Aufgabe, die alle Entwickler erledigen müssen. Der Umgang mit einer großen Menge davon kann jedoch stressig sein und zu menschlichen Fehlern führen. Obwohl es Optionen wie System.IO.Compression gibt, können Sie mit IronZIP mehr erreichen und Ihre Probleme bei der Arbeit mit komprimierten Archiven schnell lösen. In dem Artikel besprechen wir kurz die erweiterten Funktionen von IronZIP und grundlegende Operationen, die in Alltagsszenarien häufig auftreten können, sei es beim Erstellen eines ZIP-Archivs, beim Löschen von Einträgen im ZIP-Archiv oder beim Hinzufügen weiterer Dateien. Zu verstehen, wie man dies programmatisch mit IronZIP durchführt, führt zu erhöhter Effizienz und Skalierbarkeit sowie zur Automatisierung aller Aufgaben im Zusammenhang mit Archiven.
Jordi beherrscht vor allem Python, C# und C++. Wenn er seine Fähigkeiten bei Iron Software nicht einsetzt, programmiert er Spiele. Durch seine Mitverantwortung für Produkttests, Produktentwicklung und Forschung trägt Jordi wesentlich zur kontinuierlichen Produktverbesserung bei. Die vielseitigen Erfahrungen, die er sammelt, bieten ihm immer wieder neue Herausforderungen, und er sagt, dass dies einer seiner Lieblingsaspekte bei Iron Software ist. Jordi wuchs in Miami, Florida, auf und studierte Informatik und Statistik an der University of Florida.
< PREVIOUS Ein Vergleich zwischen IronXL und GemBox.Spreadsheet
NÄCHSTES > EPPlus Read Excel to Datatable C# (IronXL Tutorial)