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

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

*[レポート生成.NETAPI][5] *[CSVデータからPDFレポートを生成][6] *[CSVデータからMSWordレポートを生成][7]

レポート生成.NETAPI

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

[ダウンロードセクション][10]からDLLまたはMSIインストーラーをダウンロードするか、[NuGet][11]を介して.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][12]をインスタンス化します。 *定義されたデータソースを使用して[DataSourceInfo][13]を作成します。
  • [DocumentAssembler][14]を使用して、定義されたテンプレートファイル、出力ファイル、およびDataSourceInfoを指定して[AssembleDocument][15]メソッドを呼び出し、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][16]メソッドを呼び出して、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を使用するために、[無料の一時ライセンスを取得][17]することができます。

結論

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

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

関連項目

  • [C#を使用してJSONデータからレポートを生成する][21] *[Javaを使用してCSVデータからレポートを生成する][22]

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