Leaf Charter integration
This commit is contained in:
@@ -12,6 +12,10 @@ namespace LeafWeb.Core.Parsers
|
||||
{
|
||||
}
|
||||
|
||||
public CntrlComparisonParser(byte[] fileContents) : base(fileContents)
|
||||
{
|
||||
}
|
||||
|
||||
public CntrlComparison[] Parse()
|
||||
{
|
||||
var fittingTitles = GetNextCsvRowValues();
|
||||
|
||||
@@ -2,12 +2,14 @@ using System;
|
||||
using System.IO;
|
||||
using CsvHelper;
|
||||
using CsvHelper.Configuration;
|
||||
using LeafWeb.Core.Utility;
|
||||
|
||||
namespace LeafWeb.Core.Parsers
|
||||
{
|
||||
public class CsvParserBase : IDisposable
|
||||
{
|
||||
private readonly StreamReader _reader;
|
||||
private readonly MemoryStream _memoryStream;
|
||||
protected readonly CsvReader CsvReader;
|
||||
|
||||
protected CsvParserBase(FileSystemInfo csvFile)
|
||||
@@ -17,6 +19,15 @@ namespace LeafWeb.Core.Parsers
|
||||
CsvReader = new CsvReader(_reader, csvConfiguration);
|
||||
}
|
||||
|
||||
protected CsvParserBase(byte[] fileContents)
|
||||
{
|
||||
_memoryStream = new MemoryStream(fileContents);
|
||||
_reader = new StreamReader(_memoryStream);
|
||||
|
||||
var csvConfiguration = new CsvConfiguration { HasHeaderRecord = false, IgnoreBlankLines = false, IgnoreReadingExceptions = true };
|
||||
CsvReader = new CsvReader(_reader, csvConfiguration);
|
||||
}
|
||||
|
||||
internal static StreamReader OpenCsv(FileSystemInfo csvFile)
|
||||
{
|
||||
if (!csvFile.Exists)
|
||||
@@ -37,6 +48,8 @@ namespace LeafWeb.Core.Parsers
|
||||
public void Dispose()
|
||||
{
|
||||
_reader.Dispose();
|
||||
if (_memoryStream != null)
|
||||
_memoryStream.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user