/// <summary> /// Initializes a reader for a given stream and using the specified settings /// </summary> /// <param name="stream"></param> /// <param name="settings"></param> /// <param name="leaveOpen"></param> public CsvReader(Stream stream, CsvReaderSettings settings, bool leaveOpen) { this.Settings = settings == null ? new CsvReaderSettings() : settings.Clone(); this._leaveOpen = leaveOpen; Configure(); if (this.Settings.Encoding == null) { _reader = new StreamReader(stream, Encoding.UTF8, settings.DetectEncodingFromByteOrderMarks, Settings.ReaderBufferSize); } else { _reader = new StreamReader(stream, settings.Encoding, settings.DetectEncodingFromByteOrderMarks, Settings.ReaderBufferSize); } Settings.Readonly = true; }
public CsvReader(Stream stream, CsvReaderSettings settings) { this.Settings = settings == null ? new CsvReaderSettings() : settings.Clone(); if (this.Settings.Encoding == null) { Reader = new StreamReader(stream, settings.DetectEncodingFromByteOrderMarks); } else { Reader = new StreamReader(stream, settings.Encoding, settings.DetectEncodingFromByteOrderMarks); } Settings.Encoding = Reader.CurrentEncoding; Settings.Readonly = true; _enableQualification = Settings.TextQualification != CsvTextQualification.None; _escapedQualifier = new string(Settings.TextQualifier, 2); _qualiferString = new string(Settings.TextQualifier, 1); }
/// <summary> /// Initializes a reader for a given stream and using the specified settings /// </summary> /// <param name="stream"></param> /// <param name="settings"></param> public CsvReader(Stream stream, CsvReaderSettings settings) : this(stream, settings, false) { }