正在导出行记录长度大于32767个字符的txt文件



我一直在尝试导出一个包含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,所以您应该没事。

相关内容

  • 没有找到相关文章

最新更新