using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
C# Directory.GetFiles (Wie es funktioniert: Ein Leitfaden für Entwickler)
Veröffentlicht 19. Februar 2025
Teilen Sie:
Einführung
C# out-Parameter. Indem diese Funktionalität mit IronPDF kombiniert wird, können Entwickler PDF-Workflows in großem Maßstab automatisieren. Zum Beispiel können Sie Directory.GetFiles verwenden, um alle PDF-Dateien in einem Ordner zu finden und dann in großen Mengen zu verarbeitenIronPDFfür Aufgaben wie das Zusammenführen, Hinzufügen von Anmerkungen oder Erstellen von Berichten. Diese Kombination ermöglicht reibungslose Abläufe, insbesondere beim Umgang mit vielen Dateien im Dateisystem.
Was ist IronPDF?
IronPDFist eine robuste .NET-Bibliothek, die Entwicklern Werkzeuge zur nahtlosen Arbeit mit PDF-Dateien bietet. Mit IronPDF können Sie PDFs mit einfachen, intuitiven Methoden erstellen, bearbeiten, zusammenführen, teilen und manipulieren. Es umfasst leistungsstarke Funktionen wieHTML-zu-PDF-Konvertierung, erweiterte Stile und Metadatenverarbeitung. Für .NET-Entwickler, die an Anwendungen arbeiten, die PDF-Verarbeitung erfordern, ist IronPDF ein unschätzbares Werkzeug, das Arbeitsabläufe rationalisiert und die Produktivität steigert.
Erste Schritte
Installation von IronPDF
NuGet-Paketinstallation
Um zu beginnen, fügen Sie IronPDF über NuGet zu Ihrem Projekt hinzu:
Öffnen Sie Ihr Projekt in Visual Studio.
Gehen Sie zum Tools-Menü und wählen Sie NuGet-Paket-Manager > NuGet-Pakete für die Lösung verwalten.
Suchen Sie nach IronPDF im NuGet-Paket-Manager.
Installieren Sie die neueste Version von IronPDF.
Alternativ können Sie die NuGet-Paket-Manager-Konsole verwenden:
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
Grundlagen von Directory.GetFiles in C
Die Directory.GetFiles-Methode ist Teil des System.IO-Namespace und wird verwendet, um Dateinamen aus einem Dateisystem abzurufen. Diese Methode, ein öffentliches statisches String-Mitglied der Directory-Klasse, vereinfacht den Zugriff auf Dateipfade. Zum Beispiel:
Dim pdfFiles() As String = Directory.GetFiles("C:\Documents\PDFs", "*.pdf")
Dieses Snippet ruft alle PDF-Dateien im aktuellen Verzeichnis ab. Indem Sie diese Methode mit IronPDF kombinieren, können Sie automatisierte Lösungen zur Verarbeitung mehrerer Dateien gleichzeitig erstellen. Sie können auch ein angegebenes Suchmuster anwenden, das als Zeichenfolgenmuster definiert ist, um Dateien basierend auf ihren Erweiterungen oder Namen zu filtern.
Sie können Ihre Dateiabruflogik weiter verfeinern, indem Sie Suchoptionen angeben, wie zum Beispiel das Einschließen von Unterverzeichnissen in die Suche:
Dim pdfFiles() As String = Directory.GetFiles("C:\Documents\PDFs", "*.pdf", SearchOption.AllDirectories)
Dies stellt sicher, dass Dateien in verschachtelten Ordnern ebenfalls einbezogen werden, indem der absolute Pfad jeder Datei abgerufen wird, was den Ansatz vielseitig für verschiedene Szenarien macht.
Praktische Anwendungsfälle
Abruf und Verarbeitung von PDF-Dateien aus einem Verzeichnis
Beispiel: Laden aller PDF-Dateien zur Verarbeitung
Mit Directory.GetFiles können Sie alle PDF-Dateien in einem Verzeichnis durchlaufen und mit IronPDF verarbeiten:
string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf");
foreach (string file in pdfFiles)
{
// Load the PDF with IronPDF
var pdf = PdfDocument.FromFile(file);
Console.WriteLine($"Processing file: {Path.GetFileName(file)}");
}
string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf");
foreach (string file in pdfFiles)
{
// Load the PDF with IronPDF
var pdf = PdfDocument.FromFile(file);
Console.WriteLine($"Processing file: {Path.GetFileName(file)}");
}
Dim pdfFiles() As String = Directory.GetFiles("C:\Documents\PDFs", "*.pdf")
For Each file As String In pdfFiles
' Load the PDF with IronPDF
Dim pdf = PdfDocument.FromFile(file)
Console.WriteLine($"Processing file: {Path.GetFileName(file)}")
Next file
Dieses Beispiel zeigt, wie mehrere PDFs aus einem Verzeichnis zum Verarbeiten geladen werden können. Sobald geladen, können Sie eine Vielzahl von Operationen durchführen, wie z. B. Text extrahieren, Anmerkungen hinzufügen oder neue PDFs basierend auf ihrem Inhalt erstellen.
Dateien mithilfe von Suchmustern filtern
Beispiel: Auswahl von PDFs nach Name oder Datum
Sie können Directory.GetFiles mit LINQ kombinieren, um Dateien basierend auf Kriterien wie Erstellungs- oder Änderungsdatum zu filtern:
Dim pdfFiles() As String = Directory.GetFiles("C:\Documents\PDFs", "*.pdf")
Dim recentFiles = pdfFiles.Where(Function(file) File.GetLastWriteTime(file) > DateTime.Now.AddDays(-7))
For Each file As String In recentFiles
Console.WriteLine($"Recent file: {Path.GetFileName(file)}")
Next file
Dieser Ansatz stellt sicher, dass nur relevante Dateien verarbeitet werden, was Zeit und Rechenressourcen spart. Zum Beispiel könnten Sie diese Methode verwenden, um nur die neuesten Rechnungen oder Berichte zu verarbeiten, die innerhalb der letzten Woche erstellt wurden.
Stapelverarbeitung mit IronPDF und Directory.GetFiles
Beispiel: Zusammenfügen mehrerer PDFs
Sie können mehrere PDFs aus einem Verzeichnis zu einer einzigen Datei zusammenfügen:
string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf");
var pdfAppend = new PdfDocument(200, 200);
foreach (string file in pdfFiles)
{
var pdf = PdfDocument.FromFile(file);
pdfAppend.AppendPdf(pdf);
}
pdfAppend.SaveAs("LargePdf.pdf");
Console.WriteLine("PDFs Appended successfully!");
string[] pdfFiles = Directory.GetFiles("C:\\Documents\\PDFs", "*.pdf");
var pdfAppend = new PdfDocument(200, 200);
foreach (string file in pdfFiles)
{
var pdf = PdfDocument.FromFile(file);
pdfAppend.AppendPdf(pdf);
}
pdfAppend.SaveAs("LargePdf.pdf");
Console.WriteLine("PDFs Appended successfully!");
Dim pdfFiles() As String = Directory.GetFiles("C:\Documents\PDFs", "*.pdf")
Dim pdfAppend = New PdfDocument(200, 200)
For Each file As String In pdfFiles
Dim pdf = PdfDocument.FromFile(file)
pdfAppend.AppendPdf(pdf)
Next file
pdfAppend.SaveAs("LargePdf.pdf")
Console.WriteLine("PDFs Appended successfully!")
Dieser Ansatz ist besonders nützlich für das Erstellen konsolidierter Berichte, das Archivieren mehrerer Dokumente oder das Vorbereiten von Präsentationen. Durch die Automatisierung dieses Prozesses können Sie große Dateisammlungen mühelos verwalten.
Schritt-für-Schritt-Umsetzung
Einrichten des Projekts
Code-Snippet: Initialisierung von IronPDF und Arbeiten mit PDF-Dateien
Der folgende Code zeigt, wie IronPDF in Verbindung mit Directory.GetFiles verwendet werden kann, um PDF-Dokumente zu laden und zu bearbeiten.
using IronPdf;
using System;
using System.IO;
class Program
{
static void Main()
{
string[] pdfFiles = Directory.GetFiles("C:\\Users\\kyess\\Documents\\PDFs", "*.pdf");
var pdfAppend = new PdfDocument(200, 200);
TextAnnotation annotation = new TextAnnotation(0)
{
Contents = "Processed by IronPDF",
X = 50,
Y = 50,
};
foreach (string file in pdfFiles)
{
var pdf = PdfDocument.FromFile(file);
pdf.Annotations.Add(annotation);
pdf.SaveAs(file);
}
}
}
using IronPdf;
using System;
using System.IO;
class Program
{
static void Main()
{
string[] pdfFiles = Directory.GetFiles("C:\\Users\\kyess\\Documents\\PDFs", "*.pdf");
var pdfAppend = new PdfDocument(200, 200);
TextAnnotation annotation = new TextAnnotation(0)
{
Contents = "Processed by IronPDF",
X = 50,
Y = 50,
};
foreach (string file in pdfFiles)
{
var pdf = PdfDocument.FromFile(file);
pdf.Annotations.Add(annotation);
pdf.SaveAs(file);
}
}
}
Imports IronPdf
Imports System
Imports System.IO
Friend Class Program
Shared Sub Main()
Dim pdfFiles() As String = Directory.GetFiles("C:\Users\kyess\Documents\PDFs", "*.pdf")
Dim pdfAppend = New PdfDocument(200, 200)
Dim annotation As New TextAnnotation(0) With {
.Contents = "Processed by IronPDF",
.X = 50,
.Y = 50
}
For Each file As String In pdfFiles
Dim pdf = PdfDocument.FromFile(file)
pdf.Annotations.Add(annotation)
pdf.SaveAs(file)
Next file
End Sub
End Class
Konsolenausgabe
Erläuterung
Dieser Code zeigt, wie man mit IronPDF in C# eine Textanmerkung zu allen PDF-Dateien in einem bestimmten Verzeichnis hinzufügt. Das Programm beginnt damit, alle PDF-Dateipfade aus dem angegebenen Ordner abzurufen, indem die Methode Directory.GetFiles verwendet wird, die einen Zeichenfolgenpfad zur Angabe des Verzeichnisses nutzt und das Filtern nach Dateierweiterung unterstützt. die ein Array von Dateinamen zurückgibt, das die Pfade aller PDF-Dateien mit der Dateiendung ".pdf" enthält.
Als Nächstes initialisiert der Code ein PdfDocument-Objekt(pdfAppend)mit den Abmessungen 200x200, obwohl diese spezielle Instanz nicht direkt in der Schleife verwendet wird. Es wird dann eine TextAnnotation mit dem Text "Processed by IronPDF" an den Koordinaten erstellt(10, 10). Diese Anmerkung wird zu jeder PDF-Datei hinzugefügt.
Im foreach-Schleife durchläuft das Programm jeden Dateipfad im pdfFiles-Array. Für jede Datei lädt es das PDF mit PdfDocument.FromFile(datei), fügt die zuvor erstellte Anmerkung zur Annotationssammlung des PDFs hinzu und speichert dann das aktualisierte PDF mit pdf.SaveAs zurück in seinen absoluten Pfad(datei).
Dieser Prozess stellt sicher, dass jede PDF-Datei im angegebenen Verzeichnis die gleiche Annotation erhält und mit der Annotation gespeichert wird.
Leistungstipps und bewährte Praktiken
Optimieren der Dateiabfrage mit Directory.GetFiles
Verwenden Sie asynchrone Methoden wie Directory.EnumerateFiles, um eine bessere Leistung bei großen Verzeichnissen zu erzielen.
Effiziente Verwaltung großer Mengen von Dateien
Verarbeite Dateien in kleineren Gruppen, um den Speicherverbrauch zu reduzieren:
foreach (var batch in pdfFiles.Batch(10))
{
foreach (string file in batch)
{
var pdf = PdfDocument.FromFile(file);
// Process PDF
}
}
foreach (var batch in pdfFiles.Batch(10))
{
foreach (string file in batch)
{
var pdf = PdfDocument.FromFile(file);
// Process PDF
}
}
For Each batch In pdfFiles.Batch(10)
For Each file As String In batch
Dim pdf = PdfDocument.FromFile(file)
' Process PDF
Next file
Next batch
Fehlerbehandlung bei der Dateiverarbeitung und PDF-Erstellung
Verpacken Sie die Dateiverarbeitung in einem try-catch-Block, um Ausnahmen zu behandeln:
try
{
var pdf = PdfDocument.FromFile(file);
// Process PDF
}
catch (Exception ex)
{
Console.WriteLine($"Error processing {file}: {ex.Message}");
}
try
{
var pdf = PdfDocument.FromFile(file);
// Process PDF
}
catch (Exception ex)
{
Console.WriteLine($"Error processing {file}: {ex.Message}");
}
Try
Dim pdf = PdfDocument.FromFile(file)
' Process PDF
Catch ex As Exception
Console.WriteLine($"Error processing {file}: {ex.Message}")
End Try
Schlussfolgerung
Die Kombination der Leistungsfähigkeit von Directory.GetFiles mit IronPDF ermöglicht es Entwicklern, PDF-Dateien effizient im großen Maßstab zu verwalten und zu verarbeiten. Mit diesem Ansatz werden Aufgaben wie Batch-Verarbeitung, Zusammenführen, Filtern und Transformieren von PDFs nahtlos, wodurch der manuelle Aufwand erheblich reduziert und die Produktivität gesteigert wird. Durch die Nutzung der fortschrittlichen Funktionen von IronPDF, einschließlich dem Hinzufügen von Kopfzeilen, Metadaten und Styling, können Entwickler hochwertige, professionelle PDF-Dokumente erstellen, die auf ihre Anforderungen zugeschnitten sind.
In diesem Leitfaden haben wir untersucht, wie Sie Directory.GetFiles verwenden, um PDFs mit IronPDF abzurufen und zu bearbeiten. Von der Einrichtung eines Projekts bis zur Umsetzung praktischer Anwendungsfälle haben wir wesentliche Techniken behandelt, die auf reale Szenarien angewendet werden können. Unabhängig davon, ob Sie an der Automatisierung von Dokumenten-Workflows arbeiten oder die Funktionalität Ihrer .NET-Anwendungen verbessern, bietet diese Kombination eine robuste und skalierbare Lösung.
Wenn Sie bereit sind, tiefer in IronPDF einzutauchen und erweiterte Funktionen zu erforschen, dieoffizielle Dokumentation, sodass Sie die Bibliothek in Ihren eigenen Projekten testen können, bevor Sie sich zu einem Kauf verpflichten.
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.
NÄCHSTES > C# Out-Parameter (Wie es funktioniert: Ein Leitfaden für Entwickler)