Class ExportManager
Provides methods to export tables and text to various formats.
Acts as a factory for format-specific exporters.
The export format is automatically determined by the type of ExportOptions provided.
------------------------------------------------
Usage:
// Export a single table with default options (uses format parameter)
ExportManager.ExportTable(table, "output.csv", ExportFormat.Csv);
// Export multiple tables with custom options (format inferred from options type)
var csvOptions = new CsvExportOptions { CsvDelimiter = ";" };
ExportManager.ExportTables(tables, "output.csv", csvOptions);
// Export with custom HTML options
var htmlOptions = new HtmlExportOptions { HtmlResponsive = true };
ExportManager.ExportTable(table, "output.html", htmlOptions);
// Export entire extraction result
var config = new ExportConfiguration
{
ExportTables = true,
ExportText = true,
TableOptions = new JsonExportOptions(),
SeparateFilePerTable = true
};
ExportManager.ExportResult(result, "output", config);
------------------------------------------------
Inheritance
Namespace: IronPdf.Extractions
Assembly: IronPdf.dll
Syntax
public static class ExportManager : Object
Use ExportManager in IronPDF when a C# application works with text extraction. It represents methods to export tables and text to various formats.
ExportManager matters when an application needs to configure or invoke text extraction from C# code. The class encapsulates the related options and behavior in a single object that is set up once and reused across render or processing calls. Typical scenarios include batch generation pipelines, templated document workflows, and integration with existing C# document services.
To use ExportManager, instantiate or obtain it from the relevant entry point in the IronPDF C# API. Key methods include ExportResult, ExportTable, ExportTable, ExportTables. Assign options or invoke methods on the instance to configure or perform the operation. The custom hyphenation covers typical usage in C# end to end.
using IronPdf;
// Obtain ExportManager from the relevant entry point in the IronPDF API
void Configure(ExportManager instance)
{
instance.ExportResult();
}For the broader workflow, see the custom logging guide in the IronPDF C# documentation. For broader context, the text extraction portion of the IronPDF C# API contains related types that work with ExportManager directly. ExportManager exposes additional members beyond those highlighted above; the reference tables on this page list the full set. In application code, treat ExportManager as a configured object that is constructed once and reused across operations rather than instantiated per call. Configuration is generally idempotent: assigning the same property value twice has the same effect as assigning it once. For diagnostic purposes, inspect the relevant ExportManager property after each operation to confirm the configured state. See the constructors, properties, and methods tables below for the complete API surface of ExportManager. Application code typically obtains or instantiates a single ExportManager and shares it across multiple IronPDF operations rather than recreating it per call.
Methods
ExportResult(PdfExtractionResult, String, ExportConfiguration)
Exports an entire extraction result to a directory
Can export both tables and text content with customizable file organization.
Declaration
public static void ExportResult(PdfExtractionResult result, string outputDirectory, ExportConfiguration config)
Parameters
| Type | Name | Description |
|---|---|---|
| PdfExtractionResult | result | Extraction result to export |
| System.String | outputDirectory | Directory to output files (created if it doesn't exist) |
| ExportConfiguration | config | Export configuration specifying what to export and how |
Remarks
The export format is determined by the type of options in config.TableOptions.
If config.TableOptions is ExportOptionsBase without a specific type, TxtExporter is used by default.
Examples
var config = new ExportConfiguration
{
ExportTables = true,
ExportText = true,
TableOptions = new CsvExportOptions { CsvDelimiter = ";" },
SeparateFilePerTable = true,
FileNamePattern = "table_{page}_{index}"
};
ExportManager.ExportResult(result, "output_directory", config);
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | Thrown when result is null |
| System.ArgumentException | Thrown when outputDirectory is null or empty |
| System.Security.SecurityException | Thrown when the path is invalid or potentially malicious |
ExportTable(TableObject, String, ExportFormat)
Exports a single table to a file with default options for the specified format
Declaration
public static void ExportTable(TableObject table, string outputPath, ExportFormat format)
Parameters
| Type | Name | Description |
|---|---|---|
| TableObject | table | Table to export |
| System.String | outputPath | Path to output file |
| ExportFormat | format | Export format (creates default options for this format) |
Examples
ExportManager.ExportTable(table, "output.csv", ExportFormat.Csv);
Exceptions
| Type | Condition |
|---|---|
| System.Security.SecurityException | Thrown when the path is invalid or potentially malicious |
ExportTable(TableObject, String, ExportOptionsBase)
Exports a single table to a file with custom options
The export format is automatically determined by the type of options provided.
Declaration
public static void ExportTable(TableObject table, string outputPath, ExportOptionsBase options)
Parameters
| Type | Name | Description |
|---|---|---|
| TableObject | table | Table to export |
| System.String | outputPath | Path to output file |
| ExportOptionsBase | options | Export options (type determines format: CsvExportOptions → CSV, HtmlExportOptions → HTML, etc.) |
Remarks
If ExportOptionsBase is passed without a specific type, TxtExporter is used by default.
Examples
// CSV export with custom delimiter
var csvOptions = new CsvExportOptions { CsvDelimiter = ";" };
ExportManager.ExportTable(table, "output.csv", csvOptions);
// HTML export with custom styling
var htmlOptions = new HtmlExportOptions { HtmlTableClass = "my-table" };
ExportManager.ExportTable(table, "output.html", htmlOptions);
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | Thrown when table is null |
| System.ArgumentException | Thrown when outputPath is null or empty |
| System.Security.SecurityException | Thrown when the path is invalid or potentially malicious |
ExportTables(List<TableObject>, String, ExportFormat)
Exports multiple tables to a single file with default options for the specified format
Declaration
public static void ExportTables(List<TableObject> tables, string outputPath, ExportFormat format)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.List<TableObject> | tables | Tables to export |
| System.String | outputPath | Path to output file |
| ExportFormat | format | Export format (creates default options for this format) |
Examples
ExportManager.ExportTables(tables, "all_tables.json", ExportFormat.Json);
Exceptions
| Type | Condition |
|---|---|
| System.Security.SecurityException | Thrown when the path is invalid or potentially malicious |
ExportTables(List<TableObject>, String, ExportOptionsBase)
Exports multiple tables to a file with custom options
The export format is automatically determined by the type of options provided.
Declaration
public static void ExportTables(List<TableObject> tables, string outputPath, ExportOptionsBase options)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.List<TableObject> | tables | Tables to export |
| System.String | outputPath | Path to output file |
| ExportOptionsBase | options | Export options (type determines format: CsvExportOptions → CSV, HtmlExportOptions → HTML, etc.) |
Remarks
If ExportOptionsBase is passed without a specific type, TxtExporter is used by default.
Examples
// Export multiple tables to CSV with semicolon delimiter
var csvOptions = new CsvExportOptions { CsvDelimiter = ";" };
ExportManager.ExportTables(tables, "all_tables.csv", csvOptions);
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | Thrown when tables is null |
| System.ArgumentException | Thrown when outputPath is null or empty |
| System.Security.SecurityException | Thrown when the path is invalid or potentially malicious |