CSV文件缺失行分隔符,如何在c#中读取它

本文关键字:读取 文件 分隔符 CSV | 更新日期: 2023-09-27 18:18:56

我的CSV文件如下,

Name,Place,                   <<--- Headers
Panindra,India,
Kumar,India,

可以看到csv文件在每行末尾包含额外的"逗号",而不是空白。和行分隔符/行分隔符丢失,因此在"文件助手"中解析csv文件时显示错误。得到错误"在['Place']结尾发现额外的逗号"

如何解决这个问题?

my Delimiter CLass像这样

using FileHelpers;
namespace CsvReader.Model
{ 
        [DelimitedRecord(",")]
        public class CSVModel
        {
        [FieldTrim(TrimMode.Both)]
        public string Name;
        [FieldTrim(TrimMode.Both)]
        public string Place;
}}
    ...

和解析代码是这样的…

 engine = new FileHelperAsyncEngine<CSVModel>();
                this.engine.Options.IgnoreFirstLines = 1;
engine.BeginReadFile(fullpath);
...

CSV文件缺失行分隔符,如何在c#中读取它

你可以写一些东西来预处理这些文件,比如

string[] readText = File.ReadAllLines(path);
for (int i=0;i<readText.length;i++)
{
    readText[i]=readText[i].Trim([',']);
}
File.WriteAllLines(path, readText);