CSV export
The CSV export produces a delimited text file that contains the values of all visible table cells in the report. It is provided by the core combit.ListLabel32.CrossPlatform package and selected with LlExportTarget.Csv.
CSV is intended for structured data exchange — the export does not preserve fonts, colors, page layout, or any non-table objects. Only cell content is written; formatting and graphical elements from the report project are intentionally dropped.
Tip
Use XLSX export when you need a spreadsheet that retains formatting, headers and footers, or multiple sheets. CSV is the right choice when the consumer is a script, ETL job, or data-import process.
Supported export options
All options are set on ExportConfiguration.ExportOptions using the LlExportOption keys listed below. Values are always strings.
TxtSeparatorChar
Sets the field separator character.
- Value: a single character (for example
",",";", or"\t"). - Default:
,.
If the value is empty, the default separator is used. Only the first character of the string is used.
TxtFrameChar
Sets the text qualifier written around every field value.
- Value: a string used verbatim before and after each field (typically
"\""). - Default:
"(double quote).
Set the option to an empty string to write unqualified values.
Occurrences of the text qualifier inside a field value are doubled, as specified by RFC 4180. A value of He said "hi" is therefore exported as "He said ""hi""" and read back unchanged by any conforming CSV reader. The rule applies to the configured qualifier, including multi-character ones, and is skipped when the qualifier is empty.
Warning
With an empty text qualifier, values are written verbatim. If the data can contain the separator character or line breaks, the resulting file is no longer unambiguously parsable.
TxtIgnoreHeaderFooterLines
Controls whether the table header and footer lines end up in the exported file. Because a CSV file has at most one header row, repeating the header on every rendered page is usually undesirable.
- Value:
"0","1", or"2". - Default:
1.
| Value | Behavior |
|---|---|
0 |
Header and footer lines are exported wherever they occur, that is once per rendered page. |
1 |
Header and footer lines are ignored completely, leaving only data rows. This is the default. |
2 |
Each header and footer line is exported once, at its first occurrence. Later repetitions on the following pages are skipped. |
Values other than 0 and 2 are treated like 1.
Note
A table may define several header and footer lines. Value 2 applies to each line individually, so the complete header and footer block is exported once rather than only its respective first line.
Note
Group header and group footer lines are not affected by this option. They are controlled by TxtIgnoreGroupLines.
TxtIgnoreGroupLines
Controls whether group header and group footer lines end up in the exported file. Group lines are usually formatting aids for printed reports and rarely useful in a CSV file that is meant to be processed further.
- Value:
"0"or"1". - Default:
1.
| Value | Behavior |
|---|---|
0 |
Group header and group footer lines are exported wherever they occur, that is once per group change. |
1 |
Group header and group footer lines are ignored completely. This is the default. |
Values other than 0 are treated like 1.
TxtCharset
Sets the character encoding used when writing the file. The value is passed to Encoding.GetEncoding, so any encoding name supported by .NET can be used (for example "utf-8", "windows-1252", "iso-8859-1").
- Default: UTF-16 (
Encoding.Unicode).
Note
Some encodings require the System.Text.Encoding.CodePages package and explicit registration via Encoding.RegisterProvider on .NET. UTF-8 is always available.
Restrictions
- Only table content is exported. Objects placed outside the report container — free text objects, charts, images, lines, and rectangles — are not included.
- Barcode and checkbox table fields are exported as their textual content, not as graphics.
- All formatting (font, color, alignment) is dropped.
- Page headers, page footers, and page breaks are not represented. Table header and footer lines are controlled by
TxtIgnoreHeaderFooterLines, group header and group footer lines byTxtIgnoreGroupLines. - Whether a Byte Order Mark is written depends entirely on the chosen encoding. The default UTF-16 encoding emits one.