我的CSV文件中的哪个换行符?

时间:2018-07-03 17:27:42

标签: python csv ssis delimiter eol

我们每天都收到来自客户的.tar.gz文件,我正在使用SSIS重写导入过程。我过程的第一步之一就是解压缩通过Python脚本实现的.tar.gz文件。

解压缩后,剩下许多CSV文件,然后将它们导入SQL Server。顺便说一句,我正在使用CozyRoc DataFlow Task Plus进行加载。

我的大多数CSV文件都可以正常加载,但是我有五个失败的文件。通过阅读日志,我可以看到该进程正在读取Header和First行,就好像没有HeaderRow分隔符一样(即它正在尝试将列标题导入为ColumnHeader1ColumnValue1

我选择了这些CSV之一,将前5行复制到Excel中,使用“文本到列”定界数据,然后将其另存为新的CSV文件。 此版本已成功导入

这使我认为原始CSV某种程度上没有使用{CR}{LF}作为行定界符,但是我不知道如何检查。有什么建议吗?

2 个答案:

答案 0 :(得分:0)

我最终使用了@ vahdet的建议,因为我已经安装了notepad ++。我在EmEditor中找不到相同的选项,但它可能存在

对于好奇的人,这些文件使用的{LF}与其他文件一致。我的调查仍在继续...

答案 1 :(得分:0)

看到拥有EmEditor,可以使用EmEditor通过两种方式查找eol字符:

  1. 在行尾使用“视图”>“字符代码值...”显示一个对话框,其中显示有关当前位置的字符的信息。
  2. 转到“查看”>“标记”,然后打开“换行符”以及带有不同标记的CR和LF以在编辑时显示eol。 LF用向下箭头显示,而CRLF是直角。

您可以尝试检查的其他内容包括:文件编码,字段数据类型错误以及列数不一致。