Comma Separated Values(CSV) adalah format file untuk menyimpan data dalam bentuk teks biasa dimana nilainya dipisahkan dengan koma. CSV banyak digunakan untuk bertukar data antar aplikasi. Sebagai pengembang, kami sering kali perlu mengonversi data CSV yang besar menjadi format yang dapat ditampilkan. Artikel ini akan memandu Anda mengonversi data CSV menjadi laporan PDF dan MS Word di Java menggunakan templat sederhana.

Topik-topik berikut dibahas di bawah ini:

Laporan Generasi Java API

GroupDocs.Assembly for Java adalah API pembuatan laporan yang saya gunakan dalam artikel ini untuk menghasilkan laporan dari data CSV yang dipilih dan template dalam format TXT. Ini juga mendukung otomatisasi pembuatan laporan dari berbagai sumber data seperti JSON, XML, dan juga dari file MS Word, Excel, dan PowerPoint sebagai file data.

Unduh atau Konfigurasi

Anda dapat mengunduh file JAR dari bagian unduhan, atau hanya mendapatkan repositori dan konfigurasi dependensi untuk pom.xml aplikasi Java berbasis maven Anda.

<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>

Hasilkan Laporan PDF dari Data CSV di Java

Mari kita mulai dengan mengubah data menjadi PDF yang dapat ditampilkan. Langkah-langkah berikut akan mengarahkan Anda untuk mengonversi data CSV menjadi laporan PDF berformat.

  • Muat sumber data CSV
  • Tentukan template sesuai dengan data CSV
  • Berikan sumber data CSV dan templat ke metode sederhana untuk menghasilkan laporan PDF.
Laporan CSV ke PDF di Java

Data CSV

Untuk pembuatan laporan PDF, saya akan menggunakan contoh data CSV berikut dari orang yang berbeda beserta usia dan tanggal lahir masing-masing.

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

Templat

Tentukan template berikut dalam format TXT atau DOCX. Ini memungkinkan pengulangan daftar orang dengan perinciannya. Setelah itu, Anda dapat beralih ke kode untuk pembuatan laporan.

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

Langkah Java untuk Menghasilkan Laporan PDF dari CSV

Langkah-langkah berikut menjelaskan konversi otomatis data CSV menjadi laporan PDF sesuai dengan template yang ditentukan.

  • Tentukan file data CSV, file template .txt, dan jalur file laporan keluaran PDF.
  • Buat instance CsvDataSoure dengan file data CSV.
  • Buat DataSourceInfo dengan CsvDataSource yang ditentukan.
  • Panggil metode assembleDocument dari kelas DocumentAssembler untuk mendapatkan laporan PDF yang dihasilkan.

Kode berikut menunjukkan cara mengonversi data CSV ke laporan PDF di Java.

// Hasilkan Laporan PDF dari data CSV menggunakan template TXT di Java dengan GroupDocs.Assembly API
// Menentukan sumber data, template, dan file laporan keluaran.
String csvDataSource = "dataPath/Person.csv";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/reportFromCSV.pdf";

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

// Hasilkan Laporan
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath, reportFilePath, dataSourceInfo);

Hasilkan Laporan MS Word dari data CSV di Java

Ini sangat mirip dengan pembuatan laporan PDF di atas, Anda dapat dengan mudah membuat laporan MS Word DOC/DOCX dari data CSV:

  • Muat data CSV dari file.
  • Menentukan template dalam format TXT atau DOCX.
  • Tetapkan format dokumen laporan keluaran sebagai DOC/DOCX.
  • Kode lainnya akan tetap sama untuk menghasilkan laporan MS Word DOCX dari data CSV.

Kode berikut menunjukkan cara mengonversi data CSV ke laporan DOCX di Java.

// Hasilkan Word Report dari data CSV menggunakan template TXT di Java dengan GroupDocs.Assembly API
// Menentukan sumber data, template, dan file laporan keluaran.
String csvDataSource = "dataPath/Person.csv";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/reportFromCSV.docx";

// Muat Sumber Data CSV
CsvDataLoadOptions options = new CsvDataLoadOptions(true);
CsvDataSource datasource= new CsvDataSource(csvDataSource,options);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"persons");

// Hasilkan Laporan
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath, reportFilePath, dataSourceInfo);

Dapatkan Lisensi API Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk menggunakan API tanpa batasan evaluasi.

Kesimpulan

Singkatnya, Anda telah belajar mengonversi data CSV menjadi laporan PDF dan MS Word di Java. Saya harap Anda sekarang merasa nyaman membuat aplikasi berbasis Java Anda sendiri untuk menghasilkan laporan dengan mengonversi data CSV ke format PDF. Demikian pula, Anda dapat membuat laporan menggunakan sumber data seperti JSON dan XML.

Untuk informasi lebih lanjut tentang API, Anda dapat mengunjungi dokumentasi dan repositori GitHub. Jika ada pertanyaan dan ambiguitas lebih lanjut, hubungi dukungan gratis di forum.

Lihat juga