مقادیر جدا شده با کاما یک فرمت فایل برای ذخیره داده ها به صورت متن ساده است که در آن مقادیر با کاما از هم جدا می شوند. CSV به طور گسترده ای برای تبادل داده بین برنامه ها استفاده می شود. به عنوان یک توسعه دهنده، ما اغلب نیاز داریم که داده های بزرگ CSV را به یک قالب قابل ارائه تبدیل کنیم. این مقاله شما را راهنمایی می کند تا با استفاده از یک الگوی ساده، داده های CSV را به گزارش های PDF و MS Word در Java تبدیل کنید.

موضوعات زیر در زیر پوشش داده شده است:

Report Generation Java API

GroupDocs.Assembly for Java API تولید گزارش است که در این مقاله برای تولید گزارش از داده‌های CSV انتخابی و یک الگو در قالب TXT استفاده کرده‌ام. همچنین از اتوماسیون تولید گزارش از چندین منبع داده مانند JSON، XML و همچنین از فایل های MS Word، Excel و PowerPoint به عنوان فایل های داده پشتیبانی می کند.

دانلود یا پیکربندی کنید

می‌توانید فایل JAR را از بخش دانلودها دانلود کنید، یا فقط مخزن و پیکربندی‌های وابستگی را برای pom.xml برنامه‌های Java مبتنی بر 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>

گزارش PDF از داده های CSV در Java ایجاد کنید

بیایید با تبدیل داده ها به PDF قابل ارائه شروع کنیم. مراحل زیر شما را هدایت می کند تا داده های CSV را به یک گزارش PDF فرمت شده تبدیل کنید.

  • منبع داده CSV را بارگیری کنید
  • قالب را با توجه به داده های CSV تعریف کنید
  • منبع داده CSV و الگو را به روشی ساده برای تولید گزارش PDF ارائه دهید.
گزارش CSV به PDF در جاوا

داده های CSV

برای تولید گزارش PDF، از نمونه داده‌های CSV افراد مختلف به همراه سن و تاریخ تولد مربوطه استفاده خواهم کرد.

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

قالب

قالب زیر را با فرمت TXT یا DOCX تعریف کنید. این امکان تکرار لیست افراد با جزئیات آنها را فراهم می کند. پس از آن، می توانید به کد تولید گزارش بروید.

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

مراحل Java برای ایجاد گزارش PDF از CSV

مراحل زیر تبدیل خودکار داده های CSV به گزارش PDF را طبق قالب تعریف شده توضیح می دهد.

  • فایل داده CSV، فایل قالب txt. و مسیرهای فایل گزارش خروجی PDF را تعریف کنید.
  • CsvDataSoure را با فایل داده CSV نمونه سازی کنید.
  • DataSourceInfo را با CsvDataSource تعریف شده ایجاد کنید.
  • برای دریافت گزارش PDF تولید شده، متد assembleDocument کلاس DocumentAssembler را فراخوانی کنید.

کد زیر نحوه تبدیل داده های CSV به گزارش PDF در Java را نشان می دهد.

// ایجاد گزارش PDF از داده های CSV با استفاده از الگوی TXT در Java با GroupDocs.Assembly API
// فایل های گزارش منبع داده، الگو و خروجی را تعریف کنید.
String csvDataSource = "dataPath/Person.csv";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/reportFromCSV.pdf";

// منبع داده Laod CSV
CsvDataLoadOptions options = new CsvDataLoadOptions(true);
CsvDataSource datasource= new CsvDataSource(csvDataSource,options);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"persons");

// ایجاد گزارش
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath, reportFilePath, dataSourceInfo);

گزارش MS Word را از داده های CSV در Java ایجاد کنید

این بسیار شبیه به تولید گزارش PDF بالا است، شما به راحتی می توانید گزارش MS Word DOC/DOCX را از داده های CSV ایجاد کنید:

  • داده های CSV را از فایل بارگیری کنید.
  • تعریف قالب در فرمت TXT یا DOCX.
  • فرمت سند گزارش خروجی را به صورت DOC/DOCX تنظیم کنید.
  • بقیه کد برای تولید گزارش MS Word DOCX از داده‌های CSV یکسان باقی می‌ماند.

کد زیر نحوه تبدیل داده های CSV به گزارش DOCX در Java را نشان می دهد.

// ایجاد گزارش Word از داده‌های CSV با استفاده از الگوی TXT در Java با GroupDocs.Assembly API
// فایل های گزارش منبع داده، الگو و خروجی را تعریف کنید.
String csvDataSource = "dataPath/Person.csv";
String templateFilePath = "templatePath/template.txt";
String reportFilePath = "reportsPath/reportFromCSV.docx";

// منبع داده CSV را بارگیری کنید
CsvDataLoadOptions options = new CsvDataLoadOptions(true);
CsvDataSource datasource= new CsvDataSource(csvDataSource,options);
DataSourceInfo dataSourceInfo = new DataSourceInfo(datasource,"persons");

// ایجاد گزارش
DocumentAssembler assembler = new DocumentAssembler();
assembler.assembleDocument(templateFilePath, reportFilePath, dataSourceInfo);

مجوز API رایگان دریافت کنید

برای استفاده از API بدون محدودیت ارزیابی، می توانید یک مجوز موقت رایگان دریافت کنید.

نتیجه

به طور خلاصه، شما یاد گرفته اید که داده های CSV را به گزارش های PDF و MS Word در Java تبدیل کنید. امیدوارم اکنون راحت باشید که برنامه مبتنی بر Java خود را بسازید تا با تبدیل داده های CSV به فرمت PDF، گزارش تولید کنید. به طور مشابه، می توانید گزارش هایی را با استفاده از منابع داده مانند JSON و XML ایجاد کنید.

برای اطلاعات بیشتر درباره API، می‌توانید از documentation و مخزن GitHub دیدن کنید. در صورت وجود سوالات و ابهامات بیشتر، با پشتیبانی رایگان در [فروم] تماس بگیرید.

همچنین ببینید