CSV カンマ区切り値ファイルは、アプリケーション間でデータを交換するために広く使用されています。このデータを表示可能で意味のある情報に変換する場合は、他の形式に変換する必要があります。投稿の1つで、 Javaを使用してレポートでCSVデータを変換する方法を見てきました。この記事では、簡単なテンプレートを使用して、** C#を使用してCSVデータをPDFおよびMS Word DOC/DOCXレポートに変換する**方法について説明します。

以下のトピックについて説明します。

レポート生成.NETAPI

GroupDocs.Assemblyは、レポート生成を自動化するための.NETレポートAPIを提供します。この記事では、このGroupDocs.Assembly for .NETを使用して、選択したCSVデータとTXT形式のテンプレートからレポートを生成しました。また、** JSON、XML などの複数のデータソースをサポートし、 MS Word Excel 、およびPowerPoint**ファイルからのデータファイルもサポートします。

ダウンロードセクションからDLLまたはMSIインストーラーをダウンロードするか、NuGetを介して.NETアプリケーションにAPIをインストールできます。

PM> Install-Package GroupDocs.Assembly

C#でCSVデータからPDFレポートを生成する

カンマで区切られたデータを表示可能なPDFに変換することから始めましょう。次の手順は、CSVデータをフォーマットされたPDFレポートに変換するためのガイドです。

  • CSVデータソースを読み込みます。
  • CSVデータに従ってテンプレートを定義します。
  • PDFレポートを生成する簡単な方法にCSVデータソースとテンプレートを提供します。
C#での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)\]>>

C#でCSVからPDFレポートを生成する手順

次の手順では、.NET Reporting APIでC#を使用して、定義されたテンプレートに従ってCSVデータをPDFレポートに変換する方法について説明します。

  • CSVデータファイル、テンプレートファイル、およびPDF出力ファイルのパスを定義します。
  • CSVデータファイルと読み込みオプションを使用してCsvDataSoureをインスタンス化します。
  • 定義されたデータソースを使用してDataSourceInfoを作成します。
  • DocumentAssemblerを使用して、定義されたテンプレートファイル、出力ファイル、およびDataSourceInfoを指定してAssembleDocumentメソッドを呼び出し、PDFレポートを出力として取得します。

次のコードは、C#でCSVデータをPDFレポートに変換する方法を示しています。

// GroupDocs.Assembly APIを使用してC#でTXTテンプレートを使用してCSVデータからPDFレポートを生成する
// データソース、テンプレート、および出力レポートファイルを定義します。
string csvDataSource = @"path/person.csv";
string templateFilePath = @"path/csv-template.txt";
string reportFilePath = @"path/csv-to-pdf-report.pdf";

// CSVデータソースを読み込む
CsvDataSource dataSource = new CsvDataSource(csvDataSource, new CsvDataLoadOptions(true));

// PDF形式でレポートを生成する
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "persons"));

C#のCSVデータからMSWordレポートを生成する

自動生成されたレポートを手動で編集する場合は、出力をMSWordドキュメントとして取得することもできます。プロセスは、上記のPDFレポートの生成と非常によく似ています。次の手順は、CSVデータからDOC/DOCXレポートを生成するためのガイドです。

  • ファイルからCSVデータをロードします。
  • TXTまたはDOCX形式でテンプレートを定義します。
  • 出力レポートドキュメント形式をDOC/DOCXとして設定します。
  • AssembleDocumentメソッドを呼び出して、CSVデータからMSWordDOCXレポートを生成します。

次のコードは、C#を使用してCSVデータをDOCXレポートに変換する方法を示しています。

// GroupDocs.Assembly APIを使用してC#でTXTテンプレートを使用してCSVデータからWordDOCXレポートを生成する
// データソース、テンプレート、および出力レポートファイルを定義します。
string csvDataSource = @"path/person.csv";
string templateFilePath = @"path/csv-template.txt";
string reportFilePath = @"path/csv-to-pdf-report.docx";

// CSVデータソースを読み込む
CsvDataSource dataSource = new CsvDataSource(csvDataSource, new CsvDataLoadOptions(true));

// DOCX形式でレポートを生成する
DocumentAssembler assembler = new DocumentAssembler();
assembler.AssembleDocument(templateFilePath, reportFilePath, new DataSourceInfo(dataSource, "persons"));

無料のAPIライセンスを取得する

評価の制限なしにAPIを使用するために、無料の一時ライセンスを取得することができます。

結論

結論として、C#を使用してCSVデータをPDFおよびMSWordレポートに変換する方法を学びました。これで、CSVデータをPDF形式に変換して、独自の.NETレポートジェネレータアプリケーションを確実に構築できるようになります。同様に、JSONやXMLなどの他のデータソースを使用してレポートを生成することもできます。

APIの詳細については、documentationおよびGitHubリポジトリにアクセスしてください。さらに質問やあいまいな点がある場合は、フォーラムの無料サポートに連絡してください。

関連項目