Class CsvWriter
- Namespace
- CsvHelper
- Assembly
- CsvHelper.dll
Used to write CSV files.
public class CsvWriter : IWriter, IWriterRow, IDisposable, IAsyncDisposable
- Inheritance
-
CsvWriter
- Implements
- Inherited Members
Constructors
CsvWriter(TextWriter, IWriterConfiguration, bool)
Initializes a new instance of the CsvWriter class.
public CsvWriter(TextWriter writer, IWriterConfiguration configuration, bool leaveOpen = false)
Parameters
writerTextWriterThe writer.
configurationIWriterConfigurationThe configuration.
leaveOpenbooltrueto leave the TextWriter open after the CsvWriter object is disposed, otherwisefalse.
CsvWriter(TextWriter, CultureInfo, bool)
Initializes a new instance of the CsvWriter class.
public CsvWriter(TextWriter writer, CultureInfo culture, bool leaveOpen = false)
Parameters
writerTextWriterThe writer.
cultureCultureInfoThe culture.
leaveOpenbooltrueto leave the TextWriter open after the CsvWriter object is disposed, otherwisefalse.
Properties
Configuration
public virtual IWriterConfiguration Configuration { get; }
Property Value
Context
public virtual CsvContext Context { get; }
Property Value
HeaderRecord
public virtual string?[]? HeaderRecord { get; }
Property Value
- string[]
Index
public virtual int Index { get; }
Property Value
Row
public virtual int Row { get; }
Property Value
Methods
CanWrite(MemberMap)
Indicates if values can be written.
public virtual bool CanWrite(MemberMap memberMap)
Parameters
memberMapMemberMapThe member map.
Returns
- bool
True if values can be written.
Dispose()
public void Dispose()
Dispose(bool)
Disposes the object.
protected virtual void Dispose(bool disposing)
Parameters
disposingboolIndicates if the object is being disposed.
DisposeAsync()
public ValueTask DisposeAsync()
Returns
DisposeAsync(bool)
protected virtual ValueTask DisposeAsync(bool disposing)
Parameters
disposingbool
Returns
Flush()
public virtual void Flush()
FlushAsync()
public virtual Task FlushAsync()
Returns
FlushBuffer()
Flushes the buffer.
protected virtual void FlushBuffer()
FlushBufferAsync()
Asynchronously flushes the buffer.
protected virtual Task FlushBufferAsync()
Returns
GetTypeInfoForRecord<T>(T?)
Determines the type for the given record.
public virtual RecordTypeInfo GetTypeInfoForRecord<T>(T? record)
Parameters
recordTThe record to determine the type of.
Returns
- RecordTypeInfo
The System.Type for the record.
Type Parameters
TThe type of the record.
NextRecord()
public virtual void NextRecord()
NextRecordAsync()
public virtual Task NextRecordAsync()
Returns
SanitizeForInjection(string?)
Sanitizes the given field, before it is injected.
protected virtual string? SanitizeForInjection(string? field)
Parameters
fieldstringThe field to sanitize.
Returns
- string
The sanitized field.
Exceptions
- WriterException
Thrown when an injection character is found in the field.
WriteComment(string?)
public virtual void WriteComment(string? text)
Parameters
textstring
WriteConvertedField(string?, Type)
public virtual void WriteConvertedField(string? field, Type fieldType)
Parameters
WriteDynamicHeader(IDynamicMetaObjectProvider?)
Writes a dynamic header record.
public virtual void WriteDynamicHeader(IDynamicMetaObjectProvider? record)
Parameters
recordIDynamicMetaObjectProviderThe header record to write.
Exceptions
- ArgumentNullException
Thrown when no record is passed.
WriteField(string?)
public virtual void WriteField(string? field)
Parameters
fieldstring
WriteField(string?, bool)
public virtual void WriteField(string? field, bool shouldQuote)
Parameters
WriteField<T>(T?)
public virtual void WriteField<T>(T? field)
Parameters
fieldT
Type Parameters
T
WriteField<T>(T?, ITypeConverter)
public virtual void WriteField<T>(T? field, ITypeConverter converter)
Parameters
fieldTconverterITypeConverter
Type Parameters
T
WriteField<T, TConverter>(T?)
public virtual void WriteField<T, TConverter>(T? field)
Parameters
fieldT
Type Parameters
TTConverter
WriteHeader(Type)
public virtual void WriteHeader(Type type)
Parameters
typeType
WriteHeader<T>()
public virtual void WriteHeader<T>()
Type Parameters
T
WriteRecord<T>(T?)
public virtual void WriteRecord<T>(T? record)
Parameters
recordT
Type Parameters
T
WriteRecords(IEnumerable)
public virtual void WriteRecords(IEnumerable records)
Parameters
recordsIEnumerable
WriteRecordsAsync(IEnumerable, CancellationToken)
public virtual Task WriteRecordsAsync(IEnumerable records, CancellationToken cancellationToken = default)
Parameters
recordsIEnumerablecancellationTokenCancellationToken
Returns
WriteRecordsAsync<T>(IAsyncEnumerable<T>, CancellationToken)
public virtual Task WriteRecordsAsync<T>(IAsyncEnumerable<T> records, CancellationToken cancellationToken = default)
Parameters
recordsIAsyncEnumerable<T>cancellationTokenCancellationToken
Returns
Type Parameters
T
WriteRecordsAsync<T>(IEnumerable<T>, CancellationToken)
public virtual Task WriteRecordsAsync<T>(IEnumerable<T> records, CancellationToken cancellationToken = default)
Parameters
recordsIEnumerable<T>cancellationTokenCancellationToken
Returns
Type Parameters
T
WriteRecords<T>(IEnumerable<T>)
public virtual void WriteRecords<T>(IEnumerable<T> records)
Parameters
recordsIEnumerable<T>
Type Parameters
T
WriteToBuffer(string?)
Writes the given value to the buffer.
protected void WriteToBuffer(string? value)
Parameters
valuestringThe value to write.