FileHelpers löst eine OutOfMemoryException aus, wenn eine große CSV-Datei analysiert wird

Ich versuche, eine sehr große CSV-Datei mit FileHelpers (http://www.filehelpers.net/). Die Datei ist 1 GB komprimiert und ca. 20 GB komprimiert.

        string fileName = @"c:\myfile.csv.gz";
        using (var fileStream = File.OpenRead(fileName))
        {
            using (GZipStream gzipStream = new GZipStream(fileStream, CompressionMode.Decompress, false))
            {
                using (TextReader textReader = new StreamReader(gzipStream))
                {
                    var engine = new FileHelperEngine<CSVItem>();
                    CSVItem[] items = engine.ReadStream(textReader);                        
                }
            }
        }

FileHelpers löst dann eine OutOfMemoryException aus.

Test fehlgeschlagen: Ausnahme vom Typ 'System.OutOfMemoryException' wurde ausgelöst. System.OutOfMemoryException: Ausnahme vom Typ 'System.OutOfMemoryException' wurde ausgelöst. bei System.Text.StringBuilder.ExpandByABlock (Int32 minBlockCharCount) bei System.Text.StringBuilder.Append (Char value, Int32 repeatCount) bei System.Text.StringBuilder.Append (Char value) bei FileHelpers.StringHelper.ExtractQuoted quoteChar, Boolean allowMultiline) bei FileHelpers.DelimitedField.ExtractFieldString (LineInfo-Zeile) bei FileHelpers.FieldBase.ExtractValue (LineInfo-Zeile) bei FileHelpers.RecordInfo.StringToRecord (LineInfo-Zeile) bei FileHelperEngile1.ReadStream(TextReader reader, Int32 maxRecords, DataTable dt) at FileHelpers.FileHelperEngine1.ReadStream (TextReader Reader)

Ist es möglich, eine so große Datei mit FileHelpers zu analysieren? Wenn nicht, kann jemand einen Ansatz zum Parsen von so großen Dateien empfehlen? Vielen Dank.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage