Read Text File with DSL (from Fraktal SAS Programming)
Version vom 10. Juli 2014, 09:31 Uhr von Wolf-Dieter Batz (Diskussion | Beiträge)
What is this?
SAS can read directly from any text file. Moreover SAS can read directly from any data source that has text file properties, such as FTP, HTTP, or XML, also from named pipes and DDE hotlinks.
When intending to read from a plain text file, you simply specify path and filename along with a description of the record structure. The text file shall look like this:
Royal Inn#King's Suite#4#540 The European#Standard#1#120 St.Peter's#Business#2#333
Documented Code
Code executed | Function performed |
---|---|
filename source "&PATH.\&FILENAME."; |
Generate a file reference by with OS path and file name incl. extension |
data hotels; |
Initiate data step processing with a DATA statement |
infile source dlm = '#'; |
Use file reference from above as source with the number sign '#' as field delimiter |
length hotel $16 category $16 no_of_beds rate_in_GBP 8; |
Allocate field space by supplying length in bytes and data type |
input hotel $ category $ no_of_beds rate_in_GBP; |
Specify data structure on text file |
run; |
End the data step run-group |
Results
When issuing the phrase "vt hotels" in the command window of your SAS session, the following table might pop-up in a "Viewtable Window":
hotel | category | no_of_beds | rate_in_GBP |
---|---|---|---|
Royal Inn | King's Suite | 4 | 540 |
The European | Standard | 1 | 120 |
St.Peter's | Business | 2 | 333 |