【发布时间】:2017-05-29 14:52:50
【问题描述】:
首先,请原谅我缺乏技术英语。我会试着用一些图片来说明我的意思。
我正在尝试将文本文件“按原样”导入 SAS。它看起来像这样:
在文本中:
YPJC200,FG;00899;Pesos;0;3500;EDENOR S.A. "B" 1 VOTO
TRAD15.9FF;00902;Pesos;0;3000;EDENOR S.A. "B" 1 VOTO
这是一个用分号“;”分隔的文本文件但除此之外它还有:
- 某些名称带有点“。”在其中(例如:TRAD15.9FF)
- 某些名称中包含逗号“,”(例如:YPJC200,FG)
- 列描述有双引号
我当然会遇到错误或列位移。
正如我之前所说,我想在一列中“按原样”导入完整文件,替换前三行(即错误的标题),在一行中替换为正确的,然后再次导出到文本文件。 所以我需要获取相同的文件,但标题已更改。
我在尝试其他事情后使用此代码:
DATA WORK.WANT;
INFILE '\\server\Interfaces\position.txt'
DSD LRECL = 32767 MISSOVER DLM = '|';
INFORMAT CAMPO $1500.;
INPUT CAMPO $;
IF _N_ >= 6;
RUN;
与“INFORMAT CAMPO 1500 美元。;”我只在一列中加载文件。
我正在使用“ DLM = '|' " 避免使用分隔符。我不能设置除此之外的任何分隔符,因为我的文件包含所有分隔符 (; . , ) 当然除了管道。如果避免使用“DLM”选项,它会采用逗号分隔符,所以它是无用的。
但是现在我遇到了双引号的问题。
我到处都是这样的双引号:
"YPJC200,FG;00899;Pesos;0;3500;EDENOR S.A. ""B"" 1 VOTO"
"TRAD15.9FF;00902;Pesos;0;3000;EDENOR S.A. ""B"" 1 VOTO"
所以,直接的问题是: 如何以最简单的方式逐行、逐字符导入文件?
提前致谢
【问题讨论】:
-
请将您的示例数据作为文本发布为您问题的一部分。你希望人们为你打出来吗?
-
我现在添加。如果你看到它说“文件示例”是一个图像的链接,但是因为我有 8 个 Stackoverflow 的声誉,所以我没有让我粘贴到帖子中。图像具有列名,便于阅读,因为它有很多“分隔符”。