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データソースとテンプレートを提供します。

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リポジトリにアクセスしてください。さらに質問やあいまいな点がある場合は、フォーラムの無料サポートに連絡してください。