【发布时间】:2017-06-22 18:12:35
【问题描述】:
我有一个格式如下的文本文件:
+------------+-----------------+--------------+-----------+
| Field Name | Starting Column | Field Length | Data Type |
+------------+-----------------+--------------+-----------+
| ID | 1 | 12 | A |
| DATE | 13 | 8 | Date |
| NAME | 21 | 80 | A |
| ADDRESS | 101 | 12 | A |
| ... | ... | ... | ... |
+------------+-----------------+--------------+-----------+
我们可以在这里看到“起始列”是列开头的索引。因此,起始列与字段长度相结合,为我们提供了每列的最大大小。
我一直在使用 Fixed Width 选项,它似乎有点用,但我得到了这些奇怪的黑盒子,它们似乎正在改变一切。
【问题讨论】:
-
用文本编辑器打开文件时看到什么字符?文件保存为什么文本编码?许多 Microsoft 产品不支持 UTF-8,这是几乎所有常见非 Microsoft 系统的标准。
-
没有看到您的原始文本文件,我们真的无能为力。
-
那些黑框是行尾的 LF 和 CR 字符。只需将您的红线 2 个空格移至允许这些字符,它应该可以解决问题。我自己也经历了同样的事情,有一个巨大的固定宽度的源文件(数百列,数千个字符)。我感觉到你的痛苦......
标签: ssis sql-server-2016