Parsing Excel 2013 CSV解析算法错误?

Parsing Excel 2013 CSV解析算法错误?,parsing,csv,excel-2013,textfieldparser,Parsing,Csv,Excel 2013,Textfieldparser,我测试过的2013版Excel似乎可以解析格式错误的CSV文件,而不会出现错误/警告 我已经创建了自己的库来解析CSV文件。为测试生成一个示例CSV文件,分号是分隔符: TEST_STRING;Field1 "Band "Radiohead" in the City Hall"; 根据CSV格式说明:2.7-我的测试文件在市政厅的第2行波段Radiohead中包含错误,因为内部双引号Radiohead没有以双引号作为前缀转义 在这种情况下,我的lib和它们都会引发异常。我使用的TextFiel

我测试过的2013版Excel似乎可以解析格式错误的CSV文件,而不会出现错误/警告


我已经创建了自己的库来解析CSV文件。为测试生成一个示例CSV文件,分号是分隔符:

TEST_STRING;Field1
"Band "Radiohead" in the City Hall";
根据CSV格式说明:2.7-我的测试文件在市政厅的第2行波段Radiohead中包含错误,因为内部双引号Radiohead没有以双引号作为前缀转义

在这种情况下,我的lib和它们都会引发异常。我使用的TextFieldParser的示例代码:

using (TextFieldParser parser = new TextFieldParser(@"d:\test_2.csv"))
        {
            parser.TextFieldType = FieldType.Delimited;
            parser.SetDelimiters(";");
            int lineNumber = 0;
            while (!parser.EndOfData)
            {
                string[] fields = parser.ReadFields();
                foreach (string field in fields)
                {
                    //TODO: Process field
                    Console.WriteLine(field);
                }

                Console.WriteLine();
                Console.WriteLine("line " + (++lineNumber) + ":");
            }
        }
例外是

但Excel 2013会打开测试文件,结果如下:

如果Excel是.CSV的默认程序,我是通过双击Windows资源管理器打开测试CSV文件,还是通过Excel 2013 Ribbon=>Data=>From Text中的向导导入测试CSV文件


在Excel中出现这种行为有什么原因吗?

我已经创建了自己的库来解析CSV文件-为什么这一点可以忽略。FileHelpers库和TextFieldParser类请注意,该类来自Microsoft的.NET Framework,也会有所帮助。实际的问题是关于Excel的algo,以及为什么它处理CSV的方式不是规范所说的方式。