COBOL读写文件HELLOWORD

培训cobol找不到多少资料,弄了一下午,才弄出一个cobol读写文件的helloword

代码如下

000010 IDENTIFICATION   DIVISION.
000020 PROGRAM-ID.   FILE1.
000030 ENVIRONMENT   DIVISION.
000040 INPUT-OUTPUT   SECTION.
000050 FILE-CONTROL.
000060     SELECT GOODS-FILE  
000070     ASSIGN TO "D:/GOODS.TXT".
000080
000090 DATA    DIVISION.
000100 FILE     SECTION.
000110 FD  GOODS-FILE.
000120 01  GOODS.
000130     03 GOODS-NAME  PIC X(04).
000140 PROCEDURE   DIVISION.
000150     OPEN INPUT GOODS-FILE.
000160     READ GOODS-FILE.
000170
000180     CLOSE GOODS-FILE.
000190     DISPLAY GOODS-NAME.
000200     STOP RUN.

 

PS:在标题部以外的三个部都有有关读写的代码。

环境部中,有一个叫INPUT-OUTPUT的节,节中有一个FILE-CONTROL段。

在此段中用SELECT关键字关联内部和外部文件。

内部文件 GOODS-FILE,外部文件D:/GOODS.TXT,即在D盘根目录下GOODS.TXT文件,这个文件中我写了四个字符。

 

数据部中要有环境部中定义的内部文件,在FILE 节中,定义,FD关键字是定义出入力文件的

 

在过程部中,首先用OPEN关键字打开文件,其后跟一个关键字限制权限,权限如下

   INPUT:

    文件只能用于读取。 写入,修改或者删除操作会发生错误

    OUTPUT:

    文件只能用于写入。读取该文件会发生错误。若打开的文件已存在则删除所有现存记录。

    I-O:

    文件可以读写。

    EXTEND:

    文件只能写入。将记录插入到现有文件的末尾。

值后用READ关键字读文件,我觉得读是读入内存。

读完之后要关闭,用CLOSE关键字,这里的文件只有一行,四个字节。

所以没有循环控制

 

总结:

感觉cobol的I/O很原始,在硬盘中有入出力文件,在程序中有一个入出力文件的映射,在程序中可以操作这个映射,然后通过读写完成。

在三个部中都有内部文件名的,在环境部中连接,在数据部中通过FD定义,然后再操作部中操作。
 

你可能感兴趣的:(COBOL)