总结一下,有两种文本文件,及其对应的读入方法:
- 字段固定(Fixed Filed)——列输入模式(Column)、格式化输入模式(Formatted)
- 分隔符固定(Delimited Data)——列举输入模式(List)
对字段固定的文本文件,列输入模式:
- 对数值变量,只能读入标准数据,包括正负号、小数点、数字、和由E构成的科学计数;
- 不能够读入日期时间,以及包含美元符号、逗号等字符的数值;
- 对字段的选择非常灵活,可以任意选择字段和读入的次序。
格式化输入模式:
- 由指针控制读入的列数;
- 可以设定输入格式。
对分隔符固定的文本文件,列举输入模式:
对分隔符固定的文本文件,系统根据分隔符就能区分各个变量,对系统默认的以空格为分隔符的数据文件,列举输入模式的input语句最为简单:
input 变量名<s>;
以下是一些扩展:
- 如果源文件不是以空格为分隔符,比如是用逗号做分隔符,那么需要在infile语句后面加上 dlm="," ;
- 如果要读入超过8个字节的字符型变量,可以在数据步中加上一个length语句;
- 如果要使用输入格式,可以采用带修饰的列举模式,它的input语句类似input a $:12.;
- 在源数据文件中,比如是以逗号为分隔符,但文件中逗号还可能作为其中字符串的分隔符,这样就需要在infile语句中加上 dsd ;