OpenCOBOL中长文件路径的续行实现问题咨询
解决OpenCOBOL中长文件路径的续行问题
嘿,别着急!你完全可以在OpenCOBOL里使用这个长路径,只要掌握正确的固定格式续行规则就行,不用非得移动文件。我给你拆解一下具体怎么做:
首先,OpenCOBOL默认遵循COBOL的固定格式规则:
- 第1-5列是可选的程序行号区,通常留空即可
- 第6列是续行标记位:如果这一行是上一行的续行,就在这里填一个非空格、非数字的字符(比如
-、+、*都可以,常用-) - 第7-72列是代码编写区,超过72列的内容会被编译器忽略
针对你的Sales-File路径,正确的续行写法应该是这样的:
SELECT Sales-File ASSIGN TO "C:\Users\Bogdan\Desktop\Program Cobol\Modul 14\ -AROMASALES.RPT"
解释一下:
- 第一行从第7列开始写,把路径写到刚好不超过72列的位置(这里写到
\\结束) - 第二行第6列填
-作为续行标记,然后从第7列开始接着写剩下的路径部分,最后闭合引号
同样,你的StudentFile如果需要续行,也可以用同样的方式处理:
SELECT StudentFile ASSIGN TO "C:\Users\BLABLA\Desktop\Program Cobol\Modul 13\ -Scripts\Salutare" ORGANIZATION IS LINE SEQUENTIAL
需要注意两个关键点:
- 续行后的字符串要保持连续,不要在路径中间额外加空格(COBOL会把字符串里的空格当作路径的一部分,导致找不到文件)
- 确保整个路径字符串的引号是成对闭合的,第一行末尾不要闭合引号,留到续行的最后再闭合
这样处理后,编译器就能正确识别完整的长路径了,不用再移动文件啦!
内容的提问来源于stack exchange,提问作者BogdanP
相关产品推荐
相关产品推荐

