Table of Contents

Namespace FlameCsv

Classes

Csv

Provides static methods to read and write CSV.
To read CSV, see From and FromFile methods.
To write CSV, see To and ToFile methods.

CsvConverterFactory<T>

Creates instances of CsvConverterFactory<T>. By default, used to resolve converters for enum and Nullable<T>.

CsvConverter<T>

Base class used for registering custom converters.
Implement a converter by inheriting either CsvConverter<T, TValue> or CsvConverterFactory<T>

CsvConverter<T, TValue>

Parses and formats TValue to/from CSV fields.

CsvHeader

Read-only CSV header record.

CsvOptions<T>

Object used to configure dialect, converters, and other options to read and write CSV data.

CsvWriter<T>

Provides convenience methods for writing CSV records.

Structs

CsvExceptionHandlerArgs<T>

Arguments for CsvExceptionHandler<T>.

CsvFieldIdentifier

Identifier for a CSV field, pointing to a specific field by index, or by header name. Can be implicitly created from an integer or a string.
This type is not comparable to any other field identifier, as it's dependent on the header values.

CsvOptions<T>.AotSafeConverters

Wrapper around Converters to provide AOT-safe access to converters.

CsvParallelOptions

Options for parallel CSV processing.

CsvRecordCallbackArgs<T>

Arguments for CsvRecordCallback<T>.

CsvRecord<T>

Represents the current record when reading CSV.

CsvRecord<T>.Enumerator

Enumerates the fields in the record.

Interfaces

Csv.IParallelReadBuilder<T>

Builder to create a parallel CSV reading pipeline from.

Csv.IParallelWriteBuilder<T>

Builder to create a parallel CSV writing pipeline from.

Csv.IReadBuilderBase<T, TSelf>

Base builder to create a CSV reading pipeline from.

Csv.IReadBuilder<T>

Builder to create a CSV reading pipeline from.

Csv.IReadStreamBuilder

Builder to create a CSV reading pipeline from a stream of bytes.
You can either read raw UTF8 directly as byte, or specify an encoding to use char.

Csv.IWriteBuilderBase<T, TSelf>

Base builder to create a CSV writing pipeline from.

Csv.IWriteBuilder<T>

Builder to create a CSV writing pipeline from.

Csv.IWriteStreamBuilder

Builder to create a CSV writing pipeline to a stream.
You can either write raw UTF8 directly as byte, or specify an encoding to use char.

ICsvConverterFactory<T>

Factory interface for creating CsvConverter<T> instances.

Enums

CsvFieldQuoting

Flags enumeration that determines when CSV fields should be wrapped in quotes when writing.

CsvFieldTrimming

Enumeration that determines how leading and trailing spaces is handled when reading CSV fields.

CsvNewline

Enumeration that determines how newlines are handled in CSV files.

CsvQuoteValidation

Enumeration that determines quote validation rules when reading.

Delegates

Csv.AsyncParallelSink<T>

Delegate for writing data asynchronously for parallel workloads.
This delegate is called sequentially, and does not need to be thread-safe.

Csv.ParallelSink<T>

Delegate for writing data for parallel workloads.
This delegate is called sequentially, and does not need to be thread-safe.

CsvExceptionHandler<T>

Callback for custom handling of parsing errors.

CsvRecordCallback<T>

Callback called for every record (line) before it is processed by the library.