在没有左边修剪的数据步骤中从文件输入

时间:2014-03-28 13:20:09

标签: sas datastep

我有一个可变长度,非常难看的报告文件,我试图读入SAS。在读取文件记录时,我发现正在从文件左侧自动修剪空格。这使得将原始文件与我的数据步骤中的内容进行比较变得更加困难。如何在不进行自动修剪的情况下读取文件。

阅读文件的代码

Data Test;
  Infile myFile lrecl=200 firstobs=1 pad;
  length line $135;

  Input line $ 1 - 135;

Run;

示例文件,空格由_替换为可见性

Num___Transaction__Comment________________________________
1_____Foo__________This_is_a_comment_about_a_transaction__
___________________foo._Line_breaks_are_fun.
2_____Bar__________Blagh_Blagh
3_____Bar__________Blagh_Blagh
4_____Foo__________Foo_transactions_have_more_comments_so
___________________they_are_harder_to_read.

输出数据集,空格由_替换为可见性

line
-----
1_____Foo__________This_is_a_comment_about_a_transaction__
foo._Line_breaks_are_fun.
2_____Bar__________Blagh_Blagh
3_____Bar__________Blagh_Blagh
4_____Foo__________Foo_transactions_have_more_comments_so
they_are_harder_to_read.

1 个答案:

答案 0 :(得分:3)

您希望使用 $ CHARn。信息来保留前导空格,因此:

Data Test;
  Infile myFile lrecl=200 firstobs=1 pad;
  length line $135;

  Input line $char135.;

Run;