楼主: edwardzxf
5812 10

为什么filename识别不了有空格的文件名? [推广有奖]

  • 0关注
  • 2粉丝

已卖:32份资源

讲师

26%

还不是VIP/贵宾

-

威望
0
论坛币
222 个
通用积分
0.4203
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
3991 点
帖子
242
精华
0
在线时间
375 小时
注册时间
2010-7-30
最后登录
2021-5-25

楼主
edwardzxf 学生认证  发表于 2013-11-30 18:11:23 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
为什么文件名里有空格,filename就识别不了,如下:

options noxwait xsync;
filename dirpipe pipe"Dir D:\DATA\Analysts Forecasts";

Data _Null_;
      infile dirpipe;
          input;
          put _n_ _infile_;
Run;

把路径改成 D:\DATA\AnalystsForecasts 没有了空格就可以了,如下:


options noxwait xsync;
filename dirpipe pipe"Dir D:\DATA\AnalystsForecasts";

Data _Null_;
      infile dirpipe;
          input;
          put _n_ _infile_;
Run;

二维码

扫码加我 拉你入群

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

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

关键词:filename name file ENA 文件名

本帖被以下文库推荐

沙发
webgu 发表于 2013-11-30 21:03:11
PLS try :

options noxwait xsync;
filename dirpipe pipe ' Dir  "D:\DATA\Analysts Forecasts" ';

Data _Null_;
      infile dirpipe;
          input;
          put _n_ _infile_;
Run;
SAS资源
1. SAS 微信:StatsThinking
2. SAS QQ群:348941365

藤椅
edwardzxf 学生认证  发表于 2013-11-30 22:51:38
webgu 发表于 2013-11-30 21:03
PLS try :

options noxwait xsync;
嗯,单独这样是可以。不过我有个宏变量Path,这样好像又不行了,请问应如何modify一下呢,谢谢

%let path=D:\DATA\Analysts Forecasts;

options noxwait xsync;
filename dirpipe pipe ' Dir  "&path" ';

Data _Null_;
      infile dirpipe;
          input;
          put _n_ _infile_;
Run;

板凳
jingju11 发表于 2013-12-1 08:39:12
If I remebered correctly, I worked around this problem by
  1. ...pipe %sysfunc(quote(Dir  "&path"));
复制代码
jingju
已有 2 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
Eternal0601 + 3 + 3 + 3 补偿 + 精彩帖子
webgu + 60 + 60 + 1 + 1 + 1 观点有启发

总评分: 经验 + 60  论坛币 + 60  学术水平 + 4  热心指数 + 4  信用等级 + 4   查看全部评分

报纸
webgu 发表于 2013-12-1 10:03:10
jingju11 发表于 2013-12-1 08:39
If I remebered correctly, I worked around this problem by jingju
My solution is :

pipe  %unquote(%str(%' dir  "&dir"  %'));
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
Eternal0601 + 3 + 3 + 3 精彩帖子

总评分: 学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

SAS资源
1. SAS 微信:StatsThinking
2. SAS QQ群:348941365

地板
Eternal0601 发表于 2013-12-1 10:50:09
jingju11 发表于 2013-12-1 08:39
If I remebered correctly, I worked around this problem by jingju
It didn't work in my pc, and I don't know why.

7
webgu 发表于 2013-12-1 11:16:35
Eternal0601 发表于 2013-12-1 10:50
It didn't work in my pc, and I don't know why.
Jingju 's solution  works well for me.( WINXP+SAS 9.3)

SAS资源
1. SAS 微信:StatsThinking
2. SAS QQ群:348941365

8
Eternal0601 发表于 2013-12-1 11:24:09
webgu 发表于 2013-12-1 11:16
Jingju 's solution  works well for me.( WINXP+SAS 9.3)
After restarting sas, it works now. Wierd. Thanks for reminding.

9
edwardzxf 学生认证  发表于 2013-12-1 12:59:14
jingju11 发表于 2013-12-1 08:39
If I remebered correctly, I worked around this problem by jingju
后来我发现问题了,原来路径一前一后不能有空格,如:pipe 'Dir  "  D:\DATA\Analysts Forecasts" ';这样是不行的,要去除前端的空格才行,如:pipe 'Dir  "D:\DATA\Analysts Forecasts" ';同样的后端也不能有空格。
后来我配合用Trim,left之类的function解决这些多余的空格了。

这种问题让我诧异了,因为SAS本身不是不在乎怎么spacing和大小写的吗。

已有 1 人评分经验 论坛币 收起 理由
webgu + 100 + 100 鼓励积极发帖讨论

总评分: 经验 + 100  论坛币 + 100   查看全部评分

10
webgu 发表于 2013-12-1 17:26:59
因为是在引号里面了。
SAS资源
1. SAS 微信:StatsThinking
2. SAS QQ群:348941365

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-17 11:36