public RowParser(string columnDelimiter, string rowDelimiter, string qualifier) { ArgumentVerifier.CheckStringArgument(rowDelimiter, "rowDelimiter"); if (string.IsNullOrEmpty(columnDelimiter)) { this.singleColumn = true; if (string.IsNullOrEmpty(qualifier)) { this.fieldParser = FieldParser.BuildParserWithSingleDelimiter(rowDelimiter); } else { this.fieldParser = FieldParser.BuildParserWithSingleDelimiterAndQualifier(rowDelimiter, qualifier); } } else { if (string.IsNullOrEmpty(qualifier)) { this.fieldParser = FieldParser.BuildParserWithTwoDelimiters(columnDelimiter, rowDelimiter); } else { this.fieldParser = FieldParser.BuildParserWithTwoDelimitersAndQualifier(columnDelimiter, rowDelimiter, qualifier); } } }
public void SkipHeaderRows(IFileReader reader) { ArgumentVerifier.CheckObjectArgument(reader, "reader"); if (this.headerRowsToSkip > 0 && !string.IsNullOrEmpty(this.headerRowDelimiter)) { FieldParser headerRowFieldParser = FieldParser.BuildParserWithSingleDelimiter(this.headerRowDelimiter); for (int i = 0; i < this.headerRowsToSkip; i++) { headerRowFieldParser.ParseNext(reader); if (reader.IsEOF) { break; } } } }