阿福提供:
FORM DIRECTORY_CONTENTS_GET TABLES PT_FILE STRUCTURE GS_FILE
USING P_DIRECTORY
P_FILEMASK
CHANGING P_OK.
DATA:
L_COUNTER TYPE I,
L_COUNTER_PACKAGE TYPE I,
L_CHAR10(10),
L_TEXT(100),
L_SUBRC LIKE SY-SUBRC,
LS_FILE LIKE GS_FILE.
CLEAR PT_FILE[].
CALL 'C_DIR_READ_FINISH'
ID 'ERRNO' FIELD LS_FILE-ERRNO
ID 'ERRMSG' FIELD LS_FILE-ERRMSG.
CALL 'C_DIR_READ_START' ID 'DIR' FIELD P_DIRECTORY
ID 'FILE' FIELD '*'
ID 'ERRNO' FIELD LS_FILE-ERRNO
ID 'ERRMSG' FIELD LS_FILE-ERRMSG.
DATA: G_FILENAME(50).
DATA: T_N TYPE P.
DO .
CLEAR LS_FILE.
CALL 'C_DIR_READ_NEXT'
ID 'TYPE' FIELD LS_FILE-TYPE
ID 'NAME' FIELD LS_FILE-NAME
ID 'LEN' FIELD LS_FILE-LEN
ID 'OWNER' FIELD LS_FILE-OWNER
ID 'MTIME' FIELD LS_FILE-MTIME
ID 'MODE' FIELD LS_FILE-MODE
ID 'ERRNO' FIELD LS_FILE-ERRNO
ID 'ERRMSG' FIELD LS_FILE-ERRMSG.
IF SY-SUBRC NE 0.
EXIT.
ENDIF.
IT_FILENAME-FILENAME = LS_FILE-NAME.
APPEND IT_FILENAME.
CLEAR IT_FILENAME.
ENDDO.
ENDFORM. "DIRECTORY_CONTENTS_GET
只做 Cfuncion 的 技术探讨.