我的问题是,当我试图打开输入一个巨大的文件(6GB)时,有一条消息说:
cobol file status code 9Â
我编译了这个程序,它没有错误,但是当我试图运行它时,我使用了一个小程序(例如,3GB),我的程序工作正常。
有什么想法吗?
变量声明:
SELECT
MYFILE ASSIGN MYFILE
ACCESS SEQUENTIAL
STATUS IS XZ-STATUS6.
===
OPEN INPUT MYFILE
===
READ MYFILE NEXT AT END MOVE 1 TO ZFIN-F3
发布于 2020-12-11 17:09:17
您可能想看看此链接,其中包括一些可能适用于您的情况的信息。其中一些信息包括:
如果您为文件定义了文件状态数据项,那么在文件上的每个输入/输出操作(打开、关闭、读、写、重写、启动和删除)之后,运行时系统会更新它,以指示操作是如何完成的。定义文件状态数据项是可选的。如果未声明文件状态数据项并发生严重的文件错误,COBOL运行时系统将显示错误消息并中止您的程序。您应该在每次输入/输出操作之后检查文件状态数据项,以查看操作是否成功完成。
文件状态是一个两字节的代码.如果文件状态数据项的第一个字节包含值9,则表示COBOL运行时系统错误。在这种情况下,第二个字节是包含错误代码的二进制字段。
请注意,如果您的(奇异的)值Â
将与binary-status
的列出值(在check-mf-error-message
中)相对应,但至少可以帮助了解如何正确显示实际的文件状态代码。
发布于 2021-01-19 09:56:44
谢谢你的宝贵反馈,问题是我用来计算一些大数字的数组的大小,我已经把我的数组设置为最大值,它现在运行得很好
https://stackoverflow.com/questions/65254613
复制相似问题