包含我的主要可执行文件的文件夹非常混乱,包含输入,输出和源文件。我想将其中一些文件移动到我的可执行文件的不同目录中,但仍然可以访问它们。如果我能创建一个目录(例如./main/outfile
)来保存程序中的所有输出文件,那将是非常棒的。在Fortran 77/90中访问这些文件时是否可以包含路径?
如果编译器有任何重要性,我使用在Ubuntu 11.10上运行的gfortran。
答案 0 :(得分:7)
对于输入/输出文件,只需指定打开文件时的路径。例如:
open(unit=3,file='outputdata/data_modified.txt',status='unknown')
将在outputdata
文件夹中打开一个文件。请注意,outputdata
文件夹必须事先存在,否则您可能会收到错误。
答案 1 :(得分:2)
运行时的起始目录不是主程序所在的目录,而是启动程序时的当前目录。
例如
mkdir run_N && cd run_N && ../my_program
即使应用程序二进制文件位于另一个目录中,也会在当前目录(./run_N)中读写文件。