gpt4 book ai didi

c# - TinyCsvParser 不返回任何结果

转载 作者:行者123 更新时间:2023-11-30 22:57:06 25 4
gpt4 key购买 nike

我目前正在尝试使用 TinyCsvParser 来解析文件,尽管我的测试内容有很多条目,但返回的结果为 0。代码如下:

映射类:

public class TransactionCsvMapping : CsvMapping<TransactionDto>
{
public TransactionCsvMapping()
: base()
{
MapProperty(0, x => x.OccurenceDate);
MapProperty(1, x => x.Name);
MapProperty(4, x => x.Amount);
}
}

我正在尝试从 CSV 行创建列表的模型类:

public class TransactionDto
{
public string Name { get; set; }

public double Amount { get; set; }

public DateTime OccurenceDate { get; set; }
}

解析 CSV 文件:

CsvParserOptions csvParserOptions = new CsvParserOptions(true, ',');
CsvReaderOptions csvReaderOptions = new CsvReaderOptions(new[] { Environment.NewLine });
TransactionCsvMapping csvMapper = new TransactionCsvMapping();
CsvParser<TransactionDto> csvParser = new CsvParser<TransactionDto>(csvParserOptions, csvMapper);

var result = csvParser
.ReadFromString(csvReaderOptions, fileContents)
.ToList(); //results is empty here!

下面是解析时 fileContents 的内容:

"Date","Transaction","Name","Memo","Amount"
"9/7/2016","DEBIT","DEBIT PURCHASE","Food Yummy","-4.8000"
"9/7/2016","DEBIT","DEBIT PURCHASE","Gas Blah","-28.0000"

其中文字字符串是:

"\"Date\",\"Transaction\",\"Name\",\"Memo\",\"Amount\"\n\"9/7/2016\",\"DEBIT\",\"DEBIT PURCHASE\",\"Food Yummy\",\"-4.8000\"\n\"9/7/2016\",\"DEBIT\",\"DEBIT PURCHASE\",\"Gas Blah\",\"-28.0000\"\n\n"

为什么我在这里没有得到任何结果?我该如何克服这个问题?

最佳答案

我使用您的代码成功获得了结果。

enter image description here

使用 \r\n 而不是 \n 作为换行符或使用 \n 声明换行符

new CsvReaderOptions(new[] { "\n" });

关于c# - TinyCsvParser 不返回任何结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53873207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com