C# CsvHelper 不修剪字段中的空格

C# CsvHelper not trimming the spaces in the fields

我正在使用 CsvHelper http://csvhelper.com 版本 2.16.3。我想解析一个 csv 文件,修剪每个单元格中的所有额外空间。

这是我失败的单元测试

    [Fact]
    public void GetNextBatch_should_trim_every_cell()
    {
        var csvService = new CsvService();
        var stream = new MemoryStream();
        var streamWriter = new StreamWriter(stream);
        streamWriter.WriteLine("  123  , hello ");
        streamWriter.Flush();
        stream.Position = 0;

        var csvParser = new CsvParser(new StreamReader(stream, true), new CsvConfiguration
        {
            IsHeaderCaseSensitive = false,
            SkipEmptyRecords = true,
            TrimFields = true,
            TrimHeaders = true
        });

        var res = csvService.GetNextBatch(csvParser, 10);
        Assert.Equal("123", res.First()[0]);
        Assert.Equal("hello", res.First()[1]);
    }

    public IEnumerable<string[]> GetNextBatch(CsvParser csvParser, int batchSize)
    {
        var list = new List<string[]>();
        while (list.Count < batchSize)
        {
            var rows = csvParser.Read();
            if (rows == null)
                break;
            list.Add(rows);
        }
        return list;
    }

当我运行测试时这是结果

Assert.Equal() 失败 ↓(位置 0) 预期:123 实际:123
↑ (位置 0)

我做错了什么? 谢谢

我以错误的方式使用了该库,我应该按照文档中的建议使用 CsvReader 而不是 CsvParser。