C# 无法读取带有换行符和空行的csv

C# 无法读取带有换行符和空行的csv,c#,excel,C#,Excel,我有一个包含多行值的excel,其中有空行和换行符。。。 我可以在没有空行/换行符的情况下读取多行,但无法读取空行/换行符 感谢您的任何意见。 以下输入示例: 进行的测试 在 excel文件 所需输出:在excel文件中\n\n\n执行测试 代码: 您需要尝试/捕获格式错误的行异常我一直使用状态机逐字符处理CSV文件,从未逐行处理。只要知道最后一列不包含新行,就可以在分隔符计数到达最后一列之前计算分隔符并在列中包含新行 using (TextFieldParser parser = new Te

我有一个包含多行值的excel,其中有空行和换行符。。。 我可以在没有空行/换行符的情况下读取多行,但无法读取空行/换行符

感谢您的任何意见。 以下输入示例:

进行的测试

excel文件

所需输出:在excel文件中\n\n\n执行测试

代码:


您需要尝试/捕获格式错误的行异常

我一直使用状态机逐字符处理CSV文件,从未逐行处理。只要知道最后一列不包含新行,就可以在分隔符计数到达最后一列之前计算分隔符并在列中包含新行
using (TextFieldParser parser = new TextFieldParser(csv_file_path))
{
    parser.TextFieldType = FieldType.Delimited;
    parser.SetDelimiters(";");
    int headerrow = 0;
    while (!parser.EndOfData)
    {
        //Processing row
        string[] fields = parser.ReadFields();
        if (headerrow == 0)
        {
            foreach (string field in fields)
            {
                csvData.Columns.Add(field);
                //TODO: any logic
            }
            headerrow = 1;
        }
        else
        {
            csvData.Rows.Add(fields);
        }

    }
}