%macro readdir(indir=, outdsn=); data &outdsn (keep=name infoname infoval); rc=filename("mydir", "&indir"); did=dopen("mydir"); if did > 0 then do; memcnt = dnum(did); do i=1 to memcnt; name = dread(did, i); rc = filename("myfile", catx("/", "&indir", name)); fid = fopen("myfile"); if fid > 0 then do; infonum=foptnum(fid); do j=1 to infonum; infoname=foptname(fid, j); infoval=finfo(fid, infoname); output; end; end; else do; msg = sysmsg(); put msg; end; rc = fclose(fid); end; end; else do; msg=sysmsg(); put msg; end; rc = dclose(did); rc = filename("mydir"); run; %mend; %readdir(indir=C:\test, outdsn=out)
Tuesday, August 18, 2015
Listing all files that are located in a specific directory (update)
I prefer the codes independent on OS. It may save a lot of time to maintain. Based on SAS Note 25074, I have created the codes at below:
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment