Hi,
Is it possible to get creation date (crdate) and/or last modified date of a CSV file with SAS before import of the file?
data mydata;
infile 'C:\MyData\thedata.csv' dlm='3B'x;
input var1 :$7.
var2 :8.
;
run;
Also, creation date of the file thedata.csv.
Yes.
Look at the functions, and online help examples for functions FINFO, FOPTNUM, FOPTNAME and related. You can get the system information available from your operating system.
Assuming the operating system is Windows, the following program creates the macrovariable CRDATE with the date and time the file was last modified. You can later use this value in any SAS data or proc step:
%let folder=C:\MyData;
%let csvfile=THEDATA.CSV;
filename folder pipe "dir &folder";
data _null_;
infile folder lrecl=256 pad;
length file $32 date $10 time $5 ampm $2;
input;
file=scan(_infile_,5,' ');
if upcase(trim(file))="&csvfile" then do;
date=scan(_infile_,1,' ');
time=scan(_infile_,2,' ');
ampm=scan(_infile_,3,' ');
datenum=input(date,mmddyy10.);
timenum=input(time,time5.);
if ampm='PM' then timenum=timenum+(12*3600);
dtnum=dhms(datenum,hour(timenum),minute(timenum),second(timenum));
call symputx('CRDATE',put(dtnum,datetime19.));
stop;
end;
run;
%put &crdate;
CTorres
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.