CSV-Dateien ([Comma Separated Values][3]-Dateien werden häufig zum Austausch von Daten zwischen Anwendungen verwendet. Wenn Sie möchten, dass diese Daten in vorzeigbare und aussagekräftige Informationen übersetzt werden, müssen Sie sie in ein anderes Format konvertieren. In einem unserer Beiträge, Wir haben gesehen, wie man CSV-Daten in Berichten mit Java konvertiert.[4] Dieser Artikel führt Sie durch Konvertieren von CSV-Daten in PDF- und MS Word DOC/DOCX-Berichte mit C# unter Verwendung einer einfachen Vorlage.
Nachfolgend werden folgende Themen behandelt:
- [Berichterstellung .NET-API][5]
- [PDF-Bericht aus CSV-Daten erstellen][6]
- [MS Word-Bericht aus CSV-Daten erstellen][7]
Berichterstellung .NET-API
[GroupDocs.Assembly][8] stellt die .NET-Berichterstellungs-API bereit, um die Berichterstellung zu automatisieren. In diesem Artikel habe ich diese [GroupDocs.Assembly for .NET][9] zum Generieren von Berichten aus den ausgewählten CSV-Daten und einer TXT-Formatvorlage verwendet. Es unterstützt auch mehrere Datenquellen wie JSON, XML und auch aus MS Word-, Excel- und PowerPoint-Dateien als Datendateien.
Sie können das DLLs- oder MSI-Installationsprogramm aus dem [Download-Bereich][10] herunterladen oder die API in Ihrer .NET-Anwendung über [NuGet][11] installieren.
PM> Install-Package GroupDocs.Assembly
PDF-Bericht aus CSV-Daten in C# generieren
Beginnen wir damit, die durch Kommas getrennten Daten in ein präsentables PDF umzuwandeln. Die folgenden Schritte führen Sie durch die Konvertierung der CSV-Daten in einen formatierten PDF-Bericht.
- CSV-Datenquelle laden.
- Vorlage gemäß den CSV-Daten definieren.
- Geben Sie eine CSV-Datenquelle und eine Vorlage für eine einfache Methode zum Generieren eines PDF-Berichts an.
CSV-Daten
Um den PDF-Bericht zu erhalten, werde ich die folgenden Beispiel-CSV-Daten verschiedener Personen zusammen mit ihren jeweiligen Alters- und Geburtsdatumsdaten verwenden.
Name,Age,Birth
John Doe,32,4/1/1989 16:00
Jane Doe,29,1/31/1992 7:00
John Smith,53,3/8/1968 13:00
Schablone
Der nächste Schritt wäre, die Vorlage im TXT- oder DOCX-Format zu definieren. Das Folgende ist die Vorlage, die in diesem Beispiel verwendet wird und die Iteration der Personenliste mit ihren Details ermöglicht.
<<foreach \[in persons\]>>Name: <<\[Name\]>>, Age: <<\[Age\]>>, Date of Birth: <<\[Birth\]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<\[persons.Average(p => p.Age)\]>>
Schritte zum Generieren von PDF-Berichten aus CSV in C#
Die folgenden Schritte führen zum Konvertieren der CSV-Daten in einen PDF-Bericht gemäß der definierten Vorlage unter Verwendung von C# mit der .NET-Berichterstellungs-API.
- Definieren Sie die CSV-Datendatei, die Vorlagendatei und die Pfade der PDF-Ausgabedatei.
- Instanziiere [CsvDataSoure][12] mit CSV-Datendatei und Ladeoptionen.
- Erstellen Sie [DataSourceInfo][13] mit der definierten Datenquelle.
- Rufen Sie mit dem [DocumentAssembler][14] die Methode [AssembleDocument][15] mit definierter Vorlagendatei, Ausgabedatei und DataSourceInfo auf, um den PDF-Bericht als Ausgabe zu erhalten.
Der folgende Code zeigt, wie CSV-Daten in C# in einen PDF-Bericht konvertiert werden.
// Generieren Sie einen PDF-Bericht aus CSV-Daten mithilfe einer TXT-Vorlage in C# mit der GroupDocs.Assembly-API
// Definieren Sie Datenquelle, Vorlage und Ausgabeberichtsdateien.
string csvDataSource = @"path/person.csv";
string templateFilePath = @"path/csv-template.txt";
string reportFilePath = @"path/csv-to-pdf-report.pdf";
// CSV-Datenquelle laden
CsvDataSource dataSource = new CsvDataSource(csvDataSource, new CsvDataLoadOptions(true));
// Bericht im PDF-Format erstellen
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "persons"));
Generieren Sie MS Word-Berichte aus CSV-Daten in C#
Wenn Sie den automatisch generierten Bericht manuell bearbeiten möchten, können Sie die Ausgabe auch als MS Word-Dokument erhalten. Der Vorgang ist der obigen PDF-Berichterstellung sehr ähnlich. Die folgenden Schritte führen zum Generieren des DOC/DOCX-Berichts aus den CSV-Daten:
- Laden Sie die CSV-Daten aus der Datei.
- Definition der Vorlage im TXT- oder DOCX-Format.
- Legen Sie das Dokumentformat des Ausgabeberichts als DOC/DOCX fest.
- Rufen Sie die Methode [AssembleDocument][16] auf, um einen MS Word DOCX-Bericht aus den CSV-Daten zu generieren.
Der folgende Code zeigt, wie CSV-Daten mit C# in einen DOCX-Bericht konvertiert werden.
// Generieren Sie einen Word-DOCX-Bericht aus CSV-Daten mithilfe einer TXT-Vorlage in C# mit der GroupDocs.Assembly-API
// Definieren Sie Datenquelle, Vorlage und Ausgabeberichtsdateien.
string csvDataSource = @"path/person.csv";
string templateFilePath = @"path/csv-template.txt";
string reportFilePath = @"path/csv-to-pdf-report.docx";
// CSV-Datenquelle laden
CsvDataSource dataSource = new CsvDataSource(csvDataSource, new CsvDataLoadOptions(true));
// Bericht im DOCX-Format erstellen
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "persons"));
Holen Sie sich eine kostenlose API-Lizenz
Sie können [eine kostenlose temporäre Lizenz erhalten][17], um die API ohne die Evaluierungseinschränkungen zu verwenden.
Fazit
Abschließend haben Sie gelernt, die CSV-Daten mit C# in PDF- und MS-Word-Berichte zu konvertieren. Sie müssen jetzt sicher sein, Ihre eigene Anwendung zur Erstellung von .NET-Berichten zu erstellen, indem Sie CSV-Daten in das PDF-Format konvertieren. Ebenso können Sie auch Berichte mit anderen Datenquellen wie JSON und XML generieren.
Weitere Informationen zur API finden Sie in der [Dokumentation][18] und im [GitHub][19]-Repository. Bei weiteren Fragen und Unklarheiten wenden Sie sich an den kostenlosen Support im [Forum][20].
Siehe auch
- [Berichte aus JSON-Daten mit C# generieren][21]
- [Berichte aus CSV-Daten mit Java erstellen][22]
[1]: https://docs.fileformat.com/spreadsheet/csv/) [2]: https://blog.groupdocs.com/de/assembly/generate-reports-from-csv-data-in-java/ [3]: https://docs.fileformat.com/spreadsheet/csv/) [4]: https://blog.groupdocs.com/de/assembly/generate-reports-from-csv-data-in-java/ [5]: #report-generator-dotnet-api [6]: #csv-to-pdf-report-csharp [7]: #csv-to-docx-report-java [8]: https://products.groupdocs.com/assembly/java [9]: https://products.groupdocs.com/assembly/net/ [10]: https://downloads.groupdocs.com/assembly/net [11]: https://www.nuget.org/packages/groupdocs.assembly [12]: https://apireference.groupdocs.com/net/assembly/groupdocs.assembly.data/csvdatasource [13]: https://apireference.groupdocs.com/assembly/net/groupdocs.assembly/datasourceinfo [14]: https://apireference.groupdocs.com/assembly/net/groupdocs.assembly/documentassembler [15]: https://apireference.groupdocs.com/assembly/net/groupdocs.assembly/documentassembler/methods/assembledocument/index [16]: https://apireference.groupdocs.com/assembly/net/groupdocs.assembly/documentassembler/methods/assembledocument/index [17]: https://purchase.groupdocs.com/temporary-license [18]: https://docs.groupdocs.com/assembly/net/ [19]: https://github.com/groupdocs-assembly [20]: https://forum.groupdocs.com/c/assembly [21]: https://blog.groupdocs.com/de/assembly/generate-reports-from-json-data-in-csharp/ [22]: https://blog.groupdocs.com/de/assembly/generate-reports-from-csv-data-in-java/