READ1.
来源:互联网 发布:阿里云服务器使用手册 编辑:程序博客网 时间:2024/05/20 18:52
IDENTIFICATION DIVISION.
PROGRAM-ID. READ1.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT DSA ASSIGN TO STUDENT.
DATA DIVISION.
FILE SECTION.
FD DSA.
01 DSA-DSA.
05 SNAME PIC X (20).
05 SSEX PIC X (2).
05 SMARK PIC 9(3).
WORKING-STORAGE SECTION.
01 SWITCHES.
05 DSA-EOF-DSA PIC X VALUE 'N'.
PROCEDURE DIVISION.
OPEN INPUT DSA
PERFORM 100-READ
UNTIL DSA-EOF-DAS = 'Y'.
CLOSE DSA.
STOP RUN.
100-READ.
READ DSA
AT END
MOVE 'Y' TO DSA-EOF-DSA.
IF DSA-EOF-DSA = 'N'
DISPLAY ' RECORD:' DSA-DSA.
这是一个简单的read代码。read的对象是文件,读取的是一条一条记录!
简单说下这代码:
使用SELECT DSA ASSIGN TO STUDENT。使内部文件dsa与外部文件student对应起来。
使用FD DSA对数据进行描述,数据长度与输入数据集的逻辑长度相同。
01 SWITCHES.
05 DSA-EOF-DSA PIC X VALUE 'N'。定义一个循环,并给它赋值为n。
OPEN INPUT DSA
PERFORM 100-READ。打开文件das,执行100-read。
UNTIL DSA-EOF-DAS = 'Y'. 直到为Y,跳出循环。
100-READ.
READ DSA 读取文件数据。
AT END 当读取到文件末尾,
MOVE 'Y' TO DSA-EOF-DSA.将Y复制到DSA-EOF-DSA中。则跳出循环。
IF DSA-EOF-DSA = 'N' 如果为N。
DISPLAY ' RECORD:' DSA-DSA.则显示数据,继续循环,直到为Y,跳出循环结束。