从外部文件读取数据时SAS中输入缓冲区的默认行为

从外部文件读取数据时SAS中输入缓冲区的默认行为,sas,Sas,a.txt的内容 22 333 4444 55555 但当我运行此代码时: data numbers; infile ’c:\a.txt’; input var 5.; /* list */ ; run; numbers.sas中的数据另存为: 333 55555 **注意numbers.sas中的数据格式和a.txt中的格式 但当我使用列表时,输入缓冲区有点像这样: RULE: ----+----1----+----2----+----3----+----4----+---

a.txt的内容
22
333
4444
55555

但当我运行此代码时:

data numbers;
infile ’c:\a.txt’;
input var 5.;
/* list */ ;
run;
numbers.sas中的数据另存为:

  333  
55555
**注意numbers.sas中的数据格式和a.txt中的格式

但当我使用列表时,输入缓冲区有点像这样:

RULE:     ----+----1----+----2----+----3----+----4----+----5----+----6----+----7  
2         333 3    
4         55555 5
为什么sas不显示1和3??输入缓冲区的读数如何?
请解释

尝试将TRUNCOVER添加到内嵌语句中或删除5。在输入语句之后。SAS现在需要一个5位数字。如果源文件上的行长度小于5个字符,If将继续读取

data numbers;
infile 'c:\a.txt' truncover;
input var 5.;
run;
有关更多信息,请阅读此选项