CSV (Soubory [Comma Separated Values][3] se široce používají pro výměnu dat mezi aplikacemi. Chcete-li, aby tato data byla převedena na prezentovatelné a smysluplné informace, musíte je převést do jiného formátu. V jednom z našich příspěvků viděli jsme [jak převést data CSV v sestavách pomocí Java][4]. Tento článek vás provede převodem dat CSV do sestav PDF a MS Word DOC/DOCX pomocí C# pomocí jednoduché šablony.

Níže jsou uvedena následující témata:

  • [Report Generation .NET API][5]
  • [Vygenerujte zprávu ve formátu PDF z dat CSV][6]
  • [Vygenerujte zprávu MS Word z dat CSV][7]

Report Generation .NET API

[GroupDocs.Assembly][8] poskytuje rozhraní API pro vytváření sestav .NET pro automatizaci generování sestav. V tomto článku jsem použil tento [GroupDocs.Assembly for .NET][9] pro generování sestav z vybraných dat CSV a šablony formátu TXT. Podporuje také více zdrojů dat, jako je JSON, XML, a také ze souborů MS Word, Excel a PowerPoint jako datové soubory.

Můžete si stáhnout DLL nebo instalační program MSI z [části ke stažení][10] nebo nainstalovat API do vaší aplikace .NET prostřednictvím [NuGet][11].

PM> Install-Package GroupDocs.Assembly

Vygenerujte zprávu PDF z dat CSV v jazyce C#

Začněme transformací dat oddělených čárkami do prezentovatelného PDF. Následující kroky vás provedou převodem dat CSV do formátované zprávy PDF.

  • Načíst zdroj dat CSV.
  • Definujte šablonu podle dat CSV.
  • Poskytněte zdroj dat CSV a šablonu jednoduchému způsobu generování zprávy ve formátu PDF.
Zpráva CSV do PDF v C#

Data CSV

K získání zprávy ve formátu PDF použiji následující ukázková data CSV různých osob spolu s jejich příslušnými údaji o věku a datu narození.

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

Šablona

Dalším krokem by bylo definování šablony ve formátu TXT nebo DOCX. Následuje šablona, která je použita v tomto příkladu a umožňuje iteraci seznamu osob s jejich podrobnostmi.

<<foreach \[in persons\]>>Name: <<\[Name\]>>, Age: <<\[Age\]>>, Date of Birth: <<\[Birth\]:"dd.MM.yyyy">>
<</foreach>>
Average age: <<\[persons.Average(p => p.Age)\]>>

Kroky k generování zprávy PDF z CSV v C#

Následující kroky vedou k převodu dat CSV do sestavy PDF podle definované šablony pomocí jazyka C# s rozhraním .NET Reporting API.

  • Definujte datový soubor CSV, soubor šablony a cesty k výstupnímu souboru PDF.
  • Vytvořte instanci [CsvDataSoure][12] s datovým souborem CSV a možnostmi načítání.
  • Vytvořte [DataSourceInfo][13] s definovaným zdrojem dat.
  • Pomocí [DocumentAssembler][14] zavolejte metodu [AssembleDocument][15] s definovaným souborem šablony, výstupním souborem a DataSourceInfo, abyste získali sestavu PDF jako výstup.

Následující kód ukazuje, jak převést data CSV do sestavy PDF v C#.

// Generujte sestavu PDF z dat CSV pomocí šablony TXT v C# s GroupDocs.Assembly API
// Definujte zdroje dat, šablony a soubory výstupních sestav.
string csvDataSource = @"path/person.csv";
string templateFilePath = @"path/csv-template.txt";
string reportFilePath = @"path/csv-to-pdf-report.pdf";

// Načíst zdroj dat CSV
CsvDataSource dataSource = new CsvDataSource(csvDataSource, new CsvDataLoadOptions(true));

// Vygenerujte zprávu ve formátu PDF
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "persons"));

Generovat MS Word Report z CSV dat v C#

Pokud chcete v automatizovaně generovaném reportu provádět jakoukoliv ruční úpravu, můžete získat výstup také jako dokument MS Word. Proces bude velmi podobný výše uvedenému generování zprávy ve formátu PDF. Následující kroky vás provedou generováním zprávy DOC/DOCX z dat CSV:

  • Načtěte data CSV ze souboru.
  • Definování šablony ve formátu TXT nebo DOCX.
  • Nastavte formát dokumentu výstupní sestavy jako DOC/DOCX.
  • Voláním metody [AssembleDocument][16] vygenerujte zprávu DOCX MS Word z dat CSV.

Následující kód ukazuje, jak převést data CSV do sestavy DOCX pomocí jazyka C#.

// Generování zprávy Word DOCX z dat CSV pomocí šablony TXT v C# s GroupDocs.Assembly API
// Definujte zdroje dat, šablony a soubory výstupních sestav.
string csvDataSource = @"path/person.csv";
string templateFilePath = @"path/csv-template.txt";
string reportFilePath = @"path/csv-to-pdf-report.docx";

// Načíst zdroj dat CSV
CsvDataSource dataSource = new CsvDataSource(csvDataSource, new CsvDataLoadOptions(true));

// Vygenerujte zprávu ve formátu DOCX
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "persons"));

Získejte bezplatnou licenci API

Můžete [získat bezplatnou dočasnou licenci][17], abyste mohli používat API bez omezení hodnocení.

Závěr

Na závěr jste se naučili převádět data CSV do sestav PDF a MS Word pomocí C#. Nyní si musíte být jisti, že vytvoříte vlastní aplikaci pro vytváření sestav .NET převodem dat CSV do formátu PDF. Podobně můžete také generovat sestavy pomocí jiných zdrojů dat, jako jsou JSON a XML.

Pro více informací o API můžete navštívit [documentation][18] a [GitHub][19] repozitář. V případě dalších dotazů a nejasností kontaktujte bezplatnou podporu na [fóru][20].

Viz také

  • [Generování sestav z dat JSON pomocí C#][21]
  • [Generujte sestavy z dat CSV pomocí Java][22]

[1]: https://docs.fileformat.com/spreadsheet/csv/) [2]: https://blog.groupdocs.com/cs/assembly/generate-reports-from-csv-data-in-java/ [3]: https://docs.fileformat.com/spreadsheet/csv/) [4]: https://blog.groupdocs.com/cs/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/cs/assembly/generate-reports-from-json-data-in-csharp/ [22]: https://blog.groupdocs.com/cs/assembly/generate-reports-from-csv-data-in-java/