全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3651 11
2013-01-07
悬赏 10 个论坛币 已解决
想用SAS修改txt文档,就是删除txt文档中最后一句话
比如文档结构是这样的:
未命名1.jpg 就想删除最后一行。S3300700 WITH S3304930;
用SAS应该怎么搞?或者有没有DOS命令可以用的?先谢过了~

最佳答案

pobel 查看完整内容

data test; infile "e:\test.txt" end=last; input ; if not last then do; x=_infile_; output; end; run; data _null_; set test; file "e:\test.txt"; put x; run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-1-7 21:06:57
data test;
  infile "e:\test.txt" end=last;
  input ;
  if not last then do;
       x=_infile_;
           output;
        end;
run;

data _null_;
   set test;
   file "e:\test.txt";
   put x;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-1-7 21:35:53
didn't work for me!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-1-8 10:12:20
pobel 发表于 2013-1-7 21:21
data test;
  infile "e:\test.txt" end=last;
  input ;
可以用~灰常强大~但是如果最后行是空行的话,程序就只删除空行,我想连空行加最后有字符的一样全部删去,我就改了下程序
  data test;
  infile "C:\test.txt";
  input ;
       x=_infile_;
       if missing(x)=0 then    output;     
run;

data _null_;
   set test end= last;
if not last then  do;
file "C:\test.txt";
put x;
end;
run;
可以实现,不过略显繁琐,请问是不是有更简便的方法,比如直接在infile中添加某个选项什么的就能自动排除非空行的最后一行。
还有个问题,x=_infile_是不是等于就是把buffer中所有的东西赋值给x,不是很清楚_infile_的用法
谢谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-1-8 10:53:20
fallleafsean 发表于 2013-1-8 10:12
可以用~灰常强大~但是如果最后行是空行的话,程序就只删除空行,我想连空行加最后有字符的一样全部删去, ...
_infile_的值应该是input语句执行后当前那一行记录。

如果是input #1 var1  #2 var2 #3 var3;
那这句执行完后,_infile_的值应该是var3所在的那行记录。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-1-8 12:11:23
非常感谢~!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群