2

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.
4

1 に答える 1

3

$CHARnを使用します。入力形式で先頭の空白を保持するため、次のようになります。

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

  Input line $char135.;

Run;
于 2014-03-28T16:05:40.790 に答える