File 平面锉刀

File 平面锉刀,file,File,场景:尝试导入多个(>100)、大(>1M REC)平面文件(csv) 问题:许多记录缺少字段分隔符 问:是否有解析工具可以尝试定义和验证文件,并允许您进行“在线”更正 ETA:我正试图使用DTS导入向导将此文件导入MS SQL Server。错误消息给了我它中断的文件的行号。修理重复。我可能会用Python(或Perl或Awk)编写一些东西。 如果缺少分隔符,您如何知道字段的位置 编辑-我可能会读入所有行,忽略现有的分隔符,在已知内容上拆分它们,然后再次写出它们。你只需要这样做一次,这将比得到

场景:尝试导入多个(>100)、大(>1M REC)平面文件(csv)

问题:许多记录缺少字段分隔符

问:是否有解析工具可以尝试定义和验证文件,并允许您进行“在线”更正


ETA:我正试图使用DTS导入向导将此文件导入MS SQL Server。错误消息给了我它中断的文件的行号。修理重复。

我可能会用Python(或Perl或Awk)编写一些东西。
如果缺少分隔符,您如何知道字段的位置


编辑-我可能会读入所有行,忽略现有的分隔符,在已知内容上拆分它们,然后再次写出它们。你只需要这样做一次,这将比得到一个错误并修复一个特定的行更快、更容易。

去过那里,就这样做了。我自己写的工具

值得注意的是,有多少据称输出CSV的程序实际上并不正确

一个商业工具会很好,但是考虑到我在CSV文件中遇到的各种各样的问题(缺少分隔符,不正确的分隔符值,在字段中间嵌入CR/LF等),这是值得我自己写的。这样,当我发现一个新问题时,我就扩展我现有的程序来处理它


考虑到我的倾向,我可能应该把我的昵称改为NIH。

如果平面文件来自同一个来源,我同意编写自己的工具是最好的选择之一——每个文件的问题应该是一致的

OTOH,如果您需要从不同的提供者导入数据,那么获取导入工具可能会更有效率

我做ETL工作已经快十年了,所以我不能提出任何具体的建议


顺便问一下,是否可以重新生成平面文件?更好的解决方案是一开始就不要破坏数据,而不是事后清理。

当您尝试访问数据时,会弹出此类消息,显示记录丢失。Stellar文件修复可以帮助您摆脱这种损坏,您将找到所有类型的软件。

您可以尝试使用来解决此问题。它允许您轻松拒绝格式不正确的文件,并标识文件有问题的行

可以根据内容推断字段。这就是为什么我希望有一个工具可以让我在解析不正确的记录上插入字段分隔符。问题可能是没有一个真正广泛使用的标准(我在编写CSV时遵循这个标准,但在阅读它时它对低TW没有帮助)。