2008年(49)
分类:
2008-03-28 17:32:19
1.如果通过text模式来读取,每次Read dataset都是以换行结束,也就是有几行数据就会读几次,之后sy-subrc就变为4了(既读完最后一行之后的下一次READ,sy-subrc才变成4). 不论你把内容读到多长的容器temp里.所以这个时候的文字容器最好用string类型.因为每行的长度可能不同.
OPEN DATASET 'd:\it0105.txt' FOR INPUT IN TEXT MODE ENCODING DEFAULT.
DO.
READ DATASET 'd:\hrtest\it0105.txt' INTO temp.
IF sy-subrc NE 0.
EXIT.
ENDIF.
ENDDO.
CLOSE DATASET 'd:\hrtest\it0105.txt'.
OPEN DATASET 'd:\it0105.txt' FOR INPUT IN BINARY MODE.
DO.
READ DATASET 'd:\hrtest\it0105.txt' INTO temp.
IF sy-subrc NE 0.
EXIT.
ENDIF.
(....数据处理 。。)
ENDDO.
CLOSE DATASET 'd:\hrtest\it0105.txt'.
(。。。判断容器temp是否为空,如不是 则表示上面还没有处理最后一次的数据)。