Comma Separated Values(CSV) je formát souboru pro ukládání dat ve formě prostého textu, kde jsou hodnoty odděleny čárkami. CSV je široce používán pro výměnu dat mezi aplikacemi. Jako vývojáři často potřebujeme převést velká data CSV do prezentovatelného formátu. Tento článek vás provede převodem dat CSV do zpráv PDF a MS Word v Java pomocí jednoduché šablony.

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

Report Generation Java API

GroupDocs.Assembly for Java je rozhraní API pro generování sestav, které jsem v tomto článku použil ke generování sestav z vybraných dat CSV a šablony ve formátu TXT. Podporuje také automatizaci generování sestav z různých zdrojů dat, jako jsou JSON, XML, a také ze souborů MS Word, Excel a PowerPoint jako datové soubory.

Stáhnout nebo Konfigurovat

Soubor JAR si můžete stáhnout z části ke stažení, nebo stačí získat konfigurace úložiště a závislostí pro pom.xml vašich Java aplikací založených na maven.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-assembly</artifactId>
        <version>21.4</version> 
</dependency>

Vygenerujte zprávu PDF z dat CSV v Java

Začněme s transformací dat do prezentovatelného PDF. Následující kroky vás zavedou k převodu dat CSV do sestavy ve formátu 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 Java

Data CSV

Pro generová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ým věkem a datem 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

Definujte následující šablonu ve formátu TXT nebo DOCX. To umožňuje iterovat seznam osob s jejich podrobnostmi. Poté můžete přejít na kód pro generování sestavy.

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

Java Steps to Generation PDF Report from CSV

Následující kroky vysvětlují automatický převod dat CSV do sestavy PDF podle definované šablony.

  • Definujte datový soubor CSV, soubor šablony .txt a cesty k souboru výstupní sestavy PDF.
  • Vytvořte instanci CsvDataSoure s datovým souborem CSV.
  • Vytvořte DataSourceInfo s definovaným CsvDataSource.
  • Vygenerovanou sestavu PDF získáte voláním metody assembleDocument třídy DocumentAssembler.

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

// Generujte sestavu PDF z dat CSV pomocí šablony TXT v Java s GroupDocs.Assembly API
// Definujte zdroje dat, šablony a soubory výstupních sestav.
String csvDataSource = "dataPath/Person.csv";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/reportFromCSV.pdf";

// Zdroj dat Laod CSV
CsvDataLoadOptions options = new CsvDataLoadOptions(true);
CsvDataSource datasource= new CsvDataSource(csvDataSource,options);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"persons");

// Vygenerovat zprávu
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath, reportFilePath, dataSourceInfo);

Generujte MS Word Report z CSV dat v Java

Je to velmi podobné výše uvedenému generování zpráv ve formátu PDF, můžete snadno vytvořit zprávu MS Word 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.
  • Zbytek kódu zůstane stejný pro generování zprávy MS Word DOCX z dat CSV.

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

// Generujte Word Report z dat CSV pomocí šablony TXT v Java s GroupDocs.Assembly API
// Definujte zdroje dat, šablony a soubory výstupních sestav.
String csvDataSource = "dataPath/Person.csv";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/reportFromCSV.docx";

// Načíst zdroj dat CSV
CsvDataLoadOptions options = new CsvDataLoadOptions(true);
CsvDataSource datasource= new CsvDataSource(csvDataSource,options);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"persons");

// Vygenerovat zprávu
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath, reportFilePath, dataSourceInfo);

Získejte bezplatnou licenci API

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

Závěr

Abych to shrnul, naučili jste se převádět data CSV do PDF a zpráv MS Word v Java. Doufám, že jste již spokojeni s vytvářením vlastní aplikace založené na Java pro generování sestav převodem dat CSV do formátu PDF. Podobně můžete generovat sestavy pomocí zdrojů dat, jako jsou JSON a XML.

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

Viz také