【发布时间】:2018-10-22 17:02:54
【问题描述】:
我输入了这样的 csv 文件:
|Name|Surname|Age|
|ABCD|DCBA|11|
|QAZ|WSX|23|
当我尝试将 csv 文件上传到我的 datagridview 表时,我的第一列是空的,因为函数首先读取 | split char。
如何跳过每行中的第一个拆分字符?
部分代码:
file.ReadLine();
string line = "";
try
{
while ((line = file.ReadLine()) != null)
{
string[] splitArray = line.Split('|');
Listing.Add(new List(splitArray[0], splitArray[1], splitArray[2]));
count++;
}
}
catch
{
MessageBox.Show("Nothing to do here...");
}
file.Close();
【问题讨论】:
-
避免使用
String.Split解析文件,因为如果值包含|字符,它会中断。考虑使用经过良好测试的 CSV 库,例如 nuget.org/packages/CsvHelper -
String.Trim(char[]) 方法可能会有所帮助。您可以指定在进行拆分之前应从开头和结尾修剪的字符数组。 docs.microsoft.com/en-us/dotnet/api/…
-
@Dai 我在下面的答案中添加了一个 CsvHelper 示例。