我一直在尝试导出一个包含49个变量的SAS数据集。这些变量中的每一个都可能有32767个字符长。我想将此数据集写入一个txt文件,但SAS将lrecl
选项限制为32767个字符。有办法做到这一点吗?我尝试使用数据步骤。
data _null_;
%let _EFIERR_ = 0; /* set the ERROR detection macro variable */
%let _EFIREC_ = 0; /* clear export record count macro variable */
file 'C:pathTEST.txt';
if _n_ = 1 then do;
put "<BLAH>"
;
end;
set WORK.SAS_DATASET end=EFIEOD;
format raw1 $32767. ;
format raw2 $32767. ;
etc...
do;
EFIOUT + 1;
put raw1 $ @;
put raw2 $ @;
etc...
;
end;
if _ERROR_ then call symputx('_EFIERR_',1); /* set ERROR detection macro variable */
if EFIEOD then
do;
put "</BLAH>"
;
call symputx('_EFIREC_',EFIOUT);
end;
run;
当然。您只需要自己指定LRECL即可。
filename test temp;
data _null_;
set sashelp.class;
file test lrecl=999999;
put
@1 name $32767.
@32768 sex $32767.
@65535 age 8.
;;;;
run;
有些操作系统可能会限制您的逻辑记录长度,但在Windows中至少是1e6,所以您应该没事。