ActiveReports for .NET 18.0J
CSVへの描画
ActiveReportsユーザーガイド > エクスポート > 描画拡張機能 > CSVへの描画

Comma-Separated Values(CSV)はプレーンテキスト内の構造化されたデータの形式です。 CSVファイル内のテキストがコンマに区切られた値の系列として保存されます。レポートをこの形式に描画するためにCsvRenderingExtension を使用することができます。

レポートをCSV形式でエクスポートするには、プロジェクトに以下のパーケッジを追加します。

レポートをCSV形式でエクスポートする方法の一例を以下に示します。

  1. 新規プロジェクトとして「ページレポート(またはRDLレポート)アプリケーション」を作成します。詳細な手順については、「ActiveReportsアプリケーションを追加する」を参照してください。
  2. プロジェクトにMESCIUS.ActiveReports.Export.Xml.jaパッケージを追加します。
  3. Form.cs(またはForm.vb)を開き、タイトルバーをダブルクリックしてForm_Loadイベントを作成します。
  4. 以下のコードをForm_Loadイベント内に追加します。アプリケーションを実行すると、デフォルトで一意な名前のファイルが新規作成されます。

Visual Basicコード(Form Loadイベント内に貼り付けます。)
コードのコピー
' 描画するページレポートを指定します。
Dim report As New GrapeCity.ActiveReports.PageReport()
Dim reportDocument As New GrapeCity.ActiveReports.Document.PageDocument(report)

' 出力先のディレクトリを作成します。
Dim outputDirectory As New System.IO.DirectoryInfo("C:\MyCSV")
outputDirectory.Create()

' エクスポートの各種設定を行います。
Dim csvSettings As New GrapeCity.ActiveReports.Export.Text.Page.CsvRenderingExtension.Settings()
csvSettings.ColumnsDelimiter = ","
csvSettings.Encoding = System.Text.Encoding.UTF8
csvSettings.NoHeader = "True"
csvSettings.QuotationSymbol = """"c
csvSettings.RowsDelimiter = vbCr & vbLf

' RenderingExtensionを使用し、レポートをエクスポートします。
Dim csvRenderingExtension As New GrapeCity.ActiveReports.Export.Text.Page.CsvRenderingExtension()
Dim outputProvider As New GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory, System.IO.Path.GetFileNameWithoutExtension(outputDirectory.Name))

' 出力ファイルがすでに存在する場合は上書きします。
outputProvider.OverwriteOutputFile = True

reportDocument.Render(csvRenderingExtension, outputProvider, csvSettings)
C#コード(Form_Loadイベント内に貼り付けます。)
コードのコピー
// 描画するページレポートを指定します。
GrapeCity.ActiveReports.PageReport report = new GrapeCity.ActiveReports.PageReport();
GrapeCity.ActiveReports.Document.PageDocument reportDocument = new GrapeCity.ActiveReports.Document.PageDocument(report);

// 出力先のディレクトリを作成します。
System.IO.DirectoryInfo outputDirectory = new System.IO.DirectoryInfo(@"C:\MyCSV");
outputDirectory.Create();

// エクスポートの各種設定を行います。
GrapeCity.ActiveReports.Export.Text.Page.CsvRenderingExtension.Settings csvSettings = new GrapeCity.ActiveReports.Export.Text.Page.CsvRenderingExtension.Settings();
csvSettings.ColumnsDelimiter = ",";
csvSettings.Encoding = Encoding.UTF8;
csvSettings.NoHeader = "True";
csvSettings.QuotationSymbol = '"';
csvSettings.RowsDelimiter = "\r\n";

// RenderingExtensionを使用し、レポートをエクスポートします。
GrapeCity.ActiveReports.Export.Text.Page.CsvRenderingExtension csvRenderingExtension = new GrapeCity.ActiveReports.Export.Text.Page.CsvRenderingExtension();
GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider outputProvider = new GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory, System.IO.Path.GetFileNameWithoutExtension(outputDirectory.Name));

// 出力ファイルがすでに存在する場合は上書きします。
outputProvider.OverwriteOutputFile = true;

reportDocument.Render(csvRenderingExtension, outputProvider, csvSettings);

CSVエクスポート(描画拡張機能)のプロパティ

ActiveReportsには、レポートをCSVにどのようにレンダリングするかを制御するオプションが用意されています。

プロパティ 説明
ColumnsDelimiter 区切り文字を設定します。
DateTimeFormat 日付データの書式を設定します。(例) "MM/dd/yyyy H:mm"
Encoding 出力ファイルのエンコードを設定します。
NoHeader 出力からヘッダー行を除外するかどうかを設定します。
NumericFormat 数値データの書式を設定します。(例) "0.####"
QuotationMode "AutoQuote"は、データに応じて自動でテキスト修飾子を追加します。"AlwaysQuote"は、必ずテキスト修飾子を追加します。
QuotationSymbol テキスト修飾子を設定します。
RowsDelimiter 改行コードを設定します。

 

関連トピック