Как прочитать несколько CSV-файлов в папке с помощью CSVhelper - PullRequest
0 голосов
/ 20 ноября 2018

Как я могу прочитать несколько CSV-файлов в папке?У меня есть программа, которая отображает CSV-файл в правильном формате с использованием библиотеки csvhelper .А вот и мой код:


static void Main()
    {
        var filePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "test.csv");<br>
        var tempFilePath = Path.GetTempFileName();

        using (var reader = new StreamReader(filePath))
        using (var csvReader = new CsvReader(reader))
        using (var writer = new StreamWriter(tempFilePath))
        using (var csvWriter = new CsvWriter(writer))
        {
            csvReader.Configuration.RegisterClassMap<TestMapOld>();
            csvWriter.Configuration.RegisterClassMap<TestMapNew>();
            csvReader.Configuration.Delimiter = ",";

            var records = csvReader.GetRecords<Test>();

            csvReader.Configuration.PrepareHeaderForMatch = header =>
            {
                var newHeader = Regex.Replace(header, @"\s", string.Empty);
                newHeader = newHeader.Trim();
                newHeader = newHeader.ToLower();

                return newHeader;
            };
            csvWriter.WriteRecords(records);
        }

        File.Delete(filePath);
        File.Move(tempFilePath, filePath);
    }

1 Ответ

0 голосов
/ 20 ноября 2018

Так как это домашнее задание (и / или вы, кажется, плохо знакомы с кодированием), я не смогу дать вам очень подходящий ответ, который даст вам много часов веселья и волнения при просмотре документации и образцовпри условии

Вам нужно

GetFiles (String, String)

Возвращает имена файлов (включая их пути), которые соответствуют указанномушаблон поиска в указанном каталоге.

searchPattern

String Строка поиска, совпадающая с именами файлов в пути.Этот параметр может содержать комбинацию действительного буквального пути и подстановочных знаков (* и?), Но он не поддерживает регулярные выражения.

foreach, в (ссылка C #)

Оператор foreach выполняет инструкцию или блок операторов для каждого элемента в экземпляре типа, который реализует интерфейс System.Collections.IEnumerable или System.Collections.Generic.IEnumerable.

Я оставлю детали до вас.

...