CSV 文件缺少行分隔符,如何在 C# 中读取它?
CSV file Missing Row Separator , how to read it in c #?
我的 CSV 文件如下,
Name,Place, <<--- Headers
Panindra,India,
Kumar,India,
如您所见,csv 文件在每一行的末尾包含额外的 "Comma" 而不是空白。并且行分隔符/行分隔符丢失,因此它在 "FILE HELPERS" 中解析 csv 文件时显示错误。得到错误作为
"extra comma is found at the end of filed ['Place'] "
如何解决这个问题??
我的分隔符 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);
...
你可以写一些东西来预处理文件,比如
string[] readText = File.ReadAllLines(path);
for (int i=0;i<readText.length;i++)
{
readText[i]=readText[i].Trim([',']);
}
File.WriteAllLines(path, readText);
我的 CSV 文件如下,
Name,Place, <<--- Headers
Panindra,India,
Kumar,India,
如您所见,csv 文件在每一行的末尾包含额外的 "Comma" 而不是空白。并且行分隔符/行分隔符丢失,因此它在 "FILE HELPERS" 中解析 csv 文件时显示错误。得到错误作为 "extra comma is found at the end of filed ['Place'] "
如何解决这个问题??
我的分隔符 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);
...
你可以写一些东西来预处理文件,比如
string[] readText = File.ReadAllLines(path);
for (int i=0;i<readText.length;i++)
{
readText[i]=readText[i].Trim([',']);
}
File.WriteAllLines(path, readText);