LumenWorks.Framework.IO Represents a reader that provides fast, cached, dynamic access to CSV data. The number of records is limited to - 1. Represents a reader that provides fast, non-cached, forward-only access to CSV data. Defines the default buffer size. Defines the default delimiter character separating each field. Defines the default quote character wrapping every field. Defines the default escape character letting insert quotation characters inside a quoted field. Defines the default comment character indicating that a line is commented out. Contains the field header comparer. Contains the pointing to the CSV file. Contains the buffer size. Contains the comment character indicating that a line is commented out. Contains the escape character letting insert quotation characters inside a quoted field. Contains the delimiter character separating each field. Contains the quotation character wrapping every field. Determines which values should be trimmed. Indicates if field names are located on the first non commented line. Contains the default action to take when a parsing error has occured. Contains the action to take when a field is missing. Indicates if the reader supports multiline. Indicates if the reader will skip empty lines. Indicates if the class is initialized. Contains the field headers. Contains the dictionary of field indexes by header. The key is the field name and the value is its index. Contains the current record index in the CSV file. A value of means that the reader has not been initialized yet. Otherwise, a negative value means that no record has been read yet. Contains the starting position of the next unread field. Contains the index of the next unread field. Contains the array of the field values for the current record. A null value indicates that the field have not been parsed. Contains the maximum number of fields to retrieve for each record. Contains the read buffer. Contains the current read buffer length. Indicates if the end of the reader has been reached. Indicates if the last read operation reached an EOL character. Indicates if the first record is in cache. This can happen when initializing a reader with no headers because one record must be read to get the field count automatically Indicates if one or more field are missing for the current record. Resets after each successful record read. Indicates if a parse error occured for the current record. Resets after each successful record read. Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The buffer size in bytes. is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The delimiter character separating each field (default is ','). is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The delimiter character separating each field (default is ','). The buffer size in bytes. is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The delimiter character separating each field (default is ','). The quotation character wrapping every field (default is '''). The escape character letting insert quotation characters inside a quoted field (default is '\'). If no escape character, set to '\0' to gain some performance. The comment character indicating that a line is commented out (default is '#'). Determines which values should be trimmed. is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The delimiter character separating each field (default is ','). The quotation character wrapping every field (default is '''). The escape character letting insert quotation characters inside a quoted field (default is '\'). If no escape character, set to '\0' to gain some performance. The comment character indicating that a line is commented out (default is '#'). Determines which values should be trimmed. The buffer size in bytes. is a . must be 1 or more. Raises the event. The that contains the event data. Gets the field headers. The field headers or an empty array if headers are not supported. The instance has been disposed of. Ensures that the reader is initialized. Gets the field index for the provided header. The header to look for. The field index for the provided header. -1 if not found. The instance has been disposed of. Copies the field array of the current record to a one-dimensional array, starting at the beginning of the target array. The one-dimensional that is the destination of the fields of the current record. is . The number of fields in the record is greater than the available space from to the end of . Copies the field array of the current record to a one-dimensional array, starting at the beginning of the target array. The one-dimensional that is the destination of the fields of the current record. The zero-based index in at which copying begins. is . is les than zero or is equal to or greater than the length . No current record. The number of fields in the record is greater than the available space from to the end of . Gets the current raw CSV data. Used for exception handling purpose. The current raw CSV data. Indicates whether the specified Unicode character is categorized as white space. A Unicode character. if is white space; otherwise, . Moves to the specified record index. The record index. true if the operation was successful; otherwise, false. The instance has been disposed of. Parses a new line delimiter. The starting position of the parsing. Will contain the resulting end position. if a new line delimiter was found; otherwise, . The instance has been disposed of. Determines whether the character at the specified position is a new line delimiter. The position of the character to verify. if the character at the specified position is a new line delimiter; otherwise, . Fills the buffer with data from the reader. if data was successfully read; otherwise, . The instance has been disposed of. Reads the field at the specified index. Any unread fields with an inferior index will also be read as part of the required parsing. The field index. Indicates if the reader is currently initializing. Indicates if the value(s) are discarded. The field at the specified index. A indicates that an error occured or that the last field has been reached during initialization. is out of range. There is no current record. The CSV data appears to be missing a field. The CSV data appears to be malformed. The instance has been disposed of. Reads the next record. if a record has been successfully reads; otherwise, . The instance has been disposed of. Reads the next record. Indicates if the reader will proceed to the next record after having read headers. if it stops after having read headers; otherwise, . Indicates if the reader will skip directly to the next line without parsing the current one. To be used when an error occurs. if a record has been successfully reads; otherwise, . The instance has been disposed of. Skips empty and commented lines. If the end of the buffer is reached, its content be discarded and filled again from the reader. The position in the buffer where to start parsing. Will contains the resulting position after the operation. if the end of the reader has not been reached; otherwise, . The instance has been disposed of. Worker method. Skips empty and commented lines. The position in the buffer where to start parsing. Will contains the resulting position after the operation. The instance has been disposed of. Skips whitespace characters. The starting position of the parsing. Will contain the resulting end position. if the end of the reader has not been reached; otherwise, . The instance has been disposed of. Skips ahead to the next NewLine character. If the end of the buffer is reached, its content be discarded and filled again from the reader. The position in the buffer where to start parsing. Will contains the resulting position after the operation. if the end of the reader has not been reached; otherwise, . The instance has been disposed of. Handles a parsing error. The parsing error that occured. The current position in the buffer. is . Handles a missing field error. The partially parsed value, if available. The missing field index. The current position in the raw data. The resulting value according to . If the action is set to , then the parse error will be handled according to . Validates the state of the data reader. The validations to accomplish. No current record. This operation is invalid when the reader is closed. Copy the value of the specified field to an array. The index of the field. The offset in the field value. The destination array where the field value will be copied. The destination array offset. The number of characters to copy from the field value. Returns an that can iterate through CSV records. An that can iterate through CSV records. The instance has been disposed of. Returns an that can iterate through CSV records. An that can iterate through CSV records. The instance has been disposed of. Returns an that can iterate through CSV records. An that can iterate through CSV records. The instance has been disposed of. Contains the disposed status flag. Contains the locking object for multi-threading purpose. Raises the event. A that contains the event data. Checks if the instance has been disposed of, and if it has, throws an ; otherwise, does nothing. The instance has been disposed of. Derived classes should call this method at the start of all methods and properties that should not be accessed after a call to . Releases all resources used by the instance. Calls with the disposing parameter set to to free unmanaged and managed resources. Releases the unmanaged resources used by this instance and optionally releases the managed resources. to release both managed and unmanaged resources; to release only unmanaged resources. Releases unmanaged resources and performs other cleanup operations before the instance is reclaimed by garbage collection. Occurs when there is an error while parsing the CSV stream. Gets the comment character indicating that a line is commented out. The comment character indicating that a line is commented out. Gets the escape character letting insert quotation characters inside a quoted field. The escape character letting insert quotation characters inside a quoted field. Gets the delimiter character separating each field. The delimiter character separating each field. Gets the quotation character wrapping every field. The quotation character wrapping every field. Indicates if field names are located on the first non commented line. if field names are located on the first non commented line, otherwise, . Indicates if spaces at the start and end of a field are trimmed. if spaces at the start and end of a field are trimmed, otherwise, . Gets the buffer size. Gets or sets the default action to take when a parsing error has occured. The default action to take when a parsing error has occured. Gets or sets the action to take when a field is missing. The action to take when a field is missing. Gets or sets a value indicating if the reader supports multiline fields. A value indicating if the reader supports multiline field. Gets or sets a value indicating if the reader will skip empty lines. A value indicating if the reader will skip empty lines. Gets or sets the default header name when it is an empty string or only whitespaces. The header index will be appended to the specified name. The default header name when it is an empty string or only whitespaces. Gets the maximum number of fields to retrieve for each record. The maximum number of fields to retrieve for each record. The instance has been disposed of. Gets a value that indicates whether the current stream position is at the end of the stream. if the current stream position is at the end of the stream; otherwise . Gets the current record index in the CSV file. The current record index in the CSV file. Indicates if one or more field are missing for the current record. Resets after each successful record read. Indicates if a parse error occured for the current record. Resets after each successful record read. Gets the field with the specified name and record position. must be . The field with the specified name and record position. is or an empty string. The CSV does not have headers ( property is ). not found. Record index must be > 0. Cannot move to a previous record in forward-only mode. Cannot read record at . The CSV appears to be corrupt at the current position. The instance has been disposed of. Gets the field at the specified index and record position. The field at the specified index and record position. A is returned if the field cannot be found for the record. must be included in [0, [. Record index must be > 0. Cannot move to a previous record in forward-only mode. Cannot read record at . The CSV appears to be corrupt at the current position. The instance has been disposed of. Gets the field with the specified name. must be . The field with the specified name. is or an empty string. The CSV does not have headers ( property is ). not found. The CSV appears to be corrupt at the current position. The instance has been disposed of. Gets the field at the specified index. The field at the specified index. must be included in [0, [. No record read yet. Call ReadLine() first. The CSV appears to be corrupt at the current position. The instance has been disposed of. Occurs when the instance is disposed of. Gets a value indicating whether the instance has been disposed of. if the instance has been disposed of; otherwise, . Supports a simple iteration over the records of a . Contains the enumerated . Contains the current record. Contains the current record index. Initializes a new instance of the class. The to iterate over. is a . Advances the enumerator to the next record of the CSV. if the enumerator was successfully advanced to the next record, if the enumerator has passed the end of the CSV. Sets the enumerator to its initial position, which is before the first record in the CSV. Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Gets the current record. Gets the current record. Defines the data reader validations. No validation. Validate that the data reader is initialized. Validate that the data reader is not closed. Contains the cached records. Contains the current record index (inside the cached records array). Indicates if a new record is being read from the CSV stream. Contains the binding list linked to this reader. Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The buffer size in bytes. is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The delimiter character separating each field (default is ','). is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The delimiter character separating each field (default is ','). The buffer size in bytes. is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The delimiter character separating each field (default is ','). The quotation character wrapping every field (default is '''). The escape character letting insert quotation characters inside a quoted field (default is '\'). If no escape character, set to '\0' to gain some performance. The comment character indicating that a line is commented out (default is '#'). Determines how values should be trimmed. is a . Cannot read from . Initializes a new instance of the CsvReader class. A pointing to the CSV file. if field names are located on the first non commented line, otherwise, . The delimiter character separating each field (default is ','). The quotation character wrapping every field (default is '''). The escape character letting insert quotation characters inside a quoted field (default is '\'). If no escape character, set to '\0' to gain some performance. The comment character indicating that a line is commented out (default is '#'). if spaces at the start and end of a field are trimmed, otherwise, . Default is . The buffer size in bytes. is a . must be 1 or more. Reads the CSV stream from the current position to the end of the stream. The instance has been disposed of. Reads the next record. Indicates if the reader will proceed to the next record after having read headers. if it stops after having read headers; otherwise, . Indicates if the reader will skip directly to the next line without parsing the current one. To be used when an error occurs. if a record has been successfully reads; otherwise, . The instance has been disposed of. Moves before the first record. Moves to the last record read so far. Moves to the specified record index. The record index. true if the operation was successful; otherwise, false. The instance has been disposed of. Gets the current record index in the CSV file. The current record index in the CSV file. Gets a value that indicates whether the current stream position is at the end of the stream. if the current stream position is at the end of the stream; otherwise . Gets the field at the specified index. The field at the specified index. must be included in [0, [. No record read yet. Call ReadLine() first. The CSV data appears to be missing a field. The CSV appears to be corrupt at the current position. The instance has been disposed of. Represents a binding list wrapper for a CSV reader. Contains the linked CSV reader. Contains the cached record count. Contains the cached property descriptors. Contains the current sort property. Contains the current sort direction. Initializes a new instance of the CsvBindingList class. Represents a CSV record comparer. Contains the field index of the values to compare. Contains the sort direction. Initializes a new instance of the CsvRecordComparer class. The field index of the values to compare. The sort direction. Represents a CSV field property descriptor. Contains the field index. Initializes a new instance of the CsvPropertyDescriptor class. The field name. The field index. Gets the field index. The field index. Represents the exception that is thrown when a CSV file is malformed. Contains the message that describes the error. Contains the raw data when the error occured. Contains the current field index. Contains the current record index. Contains the current position in the raw data. Initializes a new instance of the MalformedCsvException class. Initializes a new instance of the MalformedCsvException class. The message that describes the error. Initializes a new instance of the MalformedCsvException class. The message that describes the error. The exception that is the cause of the current exception. Initializes a new instance of the MalformedCsvException class. The raw data when the error occured. The current position in the raw data. The current record index. The current field index. Initializes a new instance of the MalformedCsvException class. The raw data when the error occured. The current position in the raw data. The current record index. The current field index. The exception that is the cause of the current exception. Initializes a new instance of the MalformedCsvException class with serialized data. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. When overridden in a derived class, sets the with information about the exception. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. Gets the raw data when the error occured. The raw data when the error occured. Gets the current position in the raw data. The current position in the raw data. Gets the current record index. The current record index. Gets the current field index. The current record index. Gets a message that describes the current exception. A message that describes the current exception. Represents the exception that is thrown when a there is a missing field in a record of the CSV file. MissingFieldException would have been a better name, but there is already a . Initializes a new instance of the MissingFieldCsvException class. Initializes a new instance of the MissingFieldCsvException class. The message that describes the error. Initializes a new instance of the MissingFieldCsvException class. The message that describes the error. The exception that is the cause of the current exception. Initializes a new instance of the MissingFieldCsvException class. The raw data when the error occured. The current position in the raw data. The current record index. The current field index. Initializes a new instance of the MissingFieldCsvException class. The raw data when the error occured. The current position in the raw data. The current record index. The current field index. The exception that is the cause of the current exception. Initializes a new instance of the MissingFieldCsvException class with serialized data. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. Specifies the action to take when a parsing error has occured. Raises the event. Tries to advance to next line. Throws an exception. A strongly-typed resource class, for looking up localized strings, etc. Returns the cached ResourceManager instance used by this class. Overrides the current thread's CurrentUICulture property for all resource lookups using this strongly typed resource class. Looks up a localized string similar to Buffer size must be 1 or more.. Looks up a localized string similar to Cannot move to a previous record in forward-only mode.. Looks up a localized string similar to Cannot read record at index '{0}'.. Looks up a localized string similar to Enumeration has either not started or has already finished.. Looks up a localized string similar to Collection was modified; enumeration operation may not execute.. Looks up a localized string similar to '{0}' field header not found.. Looks up a localized string similar to Field index must be included in [0, FieldCount[. Specified field index was : '{0}'.. Looks up a localized string similar to The CSV appears to be corrupt near record '{0}' field '{1} at position '{2}'. Current raw data : '{3}'.. Looks up a localized string similar to '{0}' is not a supported missing field action.. Looks up a localized string similar to No current record.. Looks up a localized string similar to The CSV does not have headers (CsvReader.HasHeaders property is false).. Looks up a localized string similar to The number of fields in the record is greater than the available space from index to the end of the destination array.. Looks up a localized string similar to '{0}' is not a valid ParseErrorAction while inside a ParseError event.. Looks up a localized string similar to '{0}' is not a supported ParseErrorAction.. Looks up a localized string similar to This operation is invalid when the reader is closed.. Looks up a localized string similar to Record index must be 0 or more.. Specifies the action to take when a field is missing. Treat as a parsing error. Replaces by an empty value. Replaces by a null value (). Provides data for the event. Contains the error that occured. Contains the action to take. Initializes a new instance of the ParseErrorEventArgs class. The error that occured. The default action to take. Gets the error that occured. The error that occured. Gets or sets the action to take. The action to take.